Handful of cilantro leaves, chopped, optional for serving
2Scatter Sprinkle the chicken with 1/2 tsp salt, 1/2 tsp ground cumin, 1/4 tsp ground coriander, 1/4 tsp ground turmeric, 1/4 tsp black pepper, and 1/4 tsp cayenne pepper. Give it a good toss, then let it marinate for at least 20 minutes.
Put the onion, garlic, ginger, and half a cup of water in a food processor or blender. Process until mostly smooth. An immersion blender fitted with a cup attachment is another option.
In a large pan that has a cover, heat the oil or ghee over medium-high heat. Place the marinated chicken in the pan in a single layer and cook for two to three minutes on each side until it is browned. After taking the chicken out of the pan, put the skillet back over medium heat.
Add the onion-ginger combination and simmer for approximately 5 minutes, stirring often, or until all the water evaporates.
Stir into the onion-ginger mixture; sauté for approximately 20 seconds. Add the remaining 1/2 teaspoon powdered cumin, 1/2 teaspoon coriander, and 1/4 teaspoon turmeric. Reduce the heat to medium-low, stir in the tomato paste, and simmer for an additional minute.
One spoonful of yogurt at a time, whisk it into the sauce before adding more. To keep the cream from curdling, add it gradually.
Add the remaining 1 cup of water and 3/4 teaspoon of salt to the pan along with the chicken pieces and any collected juices. After bringing to a boil, reduce the heat to a simmer, and cover. Simmer for 20 minutes with a lid on.
Take off the cover and mix in the cream and garam masala. If you think it's necessary, taste the sauce and add the remaining 1/4 teaspoon of salt (we nearly always do).
Return the heat to medium-high and continue cooking, stirring now and then, for 3 to 5 minutes, or until the sauce has thickened and decreased. Garnish with a little fresh cilantro before serving.