Add chicken, yogurt, red chili powder, turmeric, ginger, garlic and salt to a bowl. Mix well and refrigerate for at least 30 minutes to 1 hour, or overnight.
Soak cashews in warm water for 30 minutes.
Heat a frying pan and add 2 teaspoons butter.
Add the marinated chicken and cook until browned on both sides. Remove and keep aside.
Heat a skillet and add 2 tablespoons oil and butter.
Add onions and sauté until softened.
Add tomatoes and cook until mushy.
Add ginger and garlic and sauté until fragrant.
Add soaked cashews and mix.
Switch off the heat and let the mixture cool.
Blend the mixture until smooth, adding ¼ to ½ cup water if required.
Strain the gravy through a fine-mesh strainer.
Heat the skillet and add 1 tablespoon oil.
Add minced ginger and garlic and sauté until fragrant.
Add the bay leaf and strained gravy.
Add red chili powder and garam masala.
Add the browned chicken.
Cover and cook on medium-low heat for 10–15 minutes, stirring occasionally.
Crush the kasuri methi between your palms and add it to the curry.
Simmer for 2 minutes.
Adjust salt to taste.
Garnish with freshly chopped cilantro.
Serve hot with naan, roti or Jeera Rice.