Melt the butter in a large frying pan over medium heat, add onion and sauté until golden brown, about 5 to 6 minutes. Add ginger, garlic, coriander, chili powder, turmeric and 1 teaspoon of salt and sauté for a minute, until spices are fragrant.
Add tomatoes and tomato paste and cook for 3 to 4 minutes, stirring every now and then. Turn off the heat and with an immersion (hand) blender (or using a stand blender) purée until smooth.
Turn the heat back on to low, add fenugreek (if using), milk and chicken. Cook covered for about 14 to 16 minutes until the chicken is soft and cooked through, stirring every so often.
When the chicken is cooked through, remove the lid and cook for further 2 minutes. Add Garam Masala, Greek yogurt and mix well, making sure it does not boil.
Serve over a bed of parboiled rice sprinkled with fresh chopped cilantro.