Marinate cut chicken pieces with ginger-garlic paste, chili powder, turmeric powder, and salt. Keep them aside.
Soak cashews in warm water.
Heat 1 tbsp oil and 1 tbsp butter in a dutch oven or deep frying pan. Fry chicken pieces till cooked. Take out the chicken pieces and keep them aside.
In the same pan, add 1 tbsp butter and a little oil. Add the onion masala. (If adding frozen onion masala, add a little water and let it thaw on low heat).
Add chili powder, garam masala, sugar, salt, and vinegar. Mix well.
Grind the cashews to a smooth paste adding a little water.
Add this cashew paste to the masala and mix well.
When the gravy comes to a boil, add the cooked chicken pieces and crushed Kasuri methi.
Once this comes to a boil, add cream if using and 1 tbsp of butter on top.
Your delicious butter chicken is ready! Enjoy!