In a large mixing bowl, toss together the chicken pieces, yogurt, lemon juice, 1 Tbsp of garam masala, 3 tsp of fenugreek leaves, the turmeric, 1/2 tsp of smoked paprika, 1 Tbsp of garlic, 1 Tbsp of ginger, and salt to taste. I usually use about 1 tsp. This marinade is crucial for infusing flavors. Cover the bowl and transfer it to the refrigerator. Let it marinate for at least 2 hours, or even up to 24 hours for maximum flavor.
After marinating, preheat your broiler to high heat. Transfer the marinated chicken to a greased 13 by 9-inch rimmed baking sheet. Spread it out into an even layer. Move your oven rack to about 3 inches below the broiler. Broil the chicken for about 10 to 15 minutes until it’s cooked through and has a nice char on the outside.
While the chicken is broiling, melt the butter in a skillet over medium-high heat. Once melted, add the onion and sauté until it becomes slightly golden brown, which should take about 7 minutes. This caramelization adds sweetness.
Add the remaining 1 Tbsp of garlic, 1 Tbsp of ginger, the remaining 1 Tbsp of garam masala, 1 1/2 tsp of smoked paprika, and 1 tsp of fenugreek leaves to the skillet. Sauté everything for about 30 seconds, allowing the spices to bloom.
Pour in the diced tomatoes and cover the skillet. Let it simmer over low heat for about 10 minutes. The tomatoes will break down, creating a lovely sauce.
Transfer the tomato mixture to a blender. Cover the lid and remove the center insert from the blender lid. Cover it with a folded kitchen towel or several paper towels to avoid splatters. Blend on low until smooth. This is the base of your sauce.
Return the blended sauce to the skillet over medium-low heat. Make sure to scrape any excess from the blender jar into the pan. Pour in the heavy cream and chicken broth, stirring to combine everything well.
Season the sauce with salt, pepper, and cayenne pepper to taste. You can adjust the seasoning based on your preference. This step is key to ensuring your sauce is flavorful.
Once the chicken is done broiling, add it along with the juices from the baking sheet into the sauce. Stir gently to combine everything, ensuring the chicken is coated in the creamy sauce. Cover and warm it through for a few minutes until everything is heated.
Serve the Butter Chicken warm over rice or with naan, if desired. Garnish with Cilantro for a fresh touch. Enjoy your delicious creation!