Begin by removing the skin and cutting the meat off of a whole chicken (about 2 pounds of meat). Cut into 1 inch pieces. If you are buying precut chicken, dark meat is preferable.
Make the ginger, garlic and turmeric yogurt mixture, and toss with chicken pieces in a large bowl. Marinate in the refrigerator for at least 2 hours before cooking. For spicy chicken, add a little cayenne pepper.
Make a ginger-garlic paste. You can easily do this by grating the ginger and garlic and combining them.
Chop onions and separate in half
In a medium sized pan, add butter or ghee, half of the chopped onions, and a pinch of salt and cook on medium-low heat until caramelized and somewhat crispy, keeping separate from the other ingredients. Make sure not to brown them or they will be bitter! You can have this caramelizing while you cook the other part of the meal.
In large pan, heat butter or ghee on medium-low heat, add the rest of the onions and sauté until translucent.
Once onions are translucent, add ginger-garlic paste, coriander powder, cumin powder, red chili powder and paprika or kashmiri chilli powder, garam masala powder, salt, and cook until fragrant.
Add tomato puree and stir to deglaze the pan.
Add yogurt, then pour into a bowl and blend these ingredients with an immersion blender until a creamy gravy or sauce forms. Add a little water if it's too thick.
Rinse Pan and put back on stove set to medium-high heat. Preheat butter or ghee.
Add chicken to pan and cook until chicken sides are light brown, then add the blended sauce, bay leaf, and whole red chillies. Reduce heat to medium-low heat and cover.
Cook on medium low for about one hour, or until chicken is very tender and sauce is thick and creamy.
Serve over white rice and garnish with caramelized and crispy onions as well as fresh coriander or cilantro.
Enjoy!