Mince the garlic, ginger, onion, and shallot. Easiest if done using a food processor if you have one.
Heat the olive oil to medium in a large skillet (skillet should have a lid so you can cover it). Add the minced garlic, ginger, onion, and shallot and stir fry for around 2-3 minutes stirring constantly.
Add the cayenne (if using), salt, garam masala, chili powder, lemon juice, and 3 tbsps of the butter. Stir constantly for 1 minute incorporating all the spices and melting the butter.
Still on medium heat, add the chicken and the tomato sauce. Stir well, and then leave to simmer for 5-7 minutes on a medium or medium-low heat. The chicken should be pretty much cooked through at this point. If you see that it is not, leave to cook a little while longer. Stir occasionally.
On medium-low heat, now add the cream and yogurt and stir. Cover and cook for an additional 10 minutes. Remove the lid, and then stir in the last remaining tablespoon of butter. Add additional salt to taste if you like.
Recommended garnishes are lemon wedges, cilantro and red onion. Add to your hearts content, and enjoy this dish cooked with love for your family!
