Toast the spices for the garam masala for 1-2 minutes until fragrant, then grind them into a fine powder.
Make a ginger garlic paste by blending ginger, garlic, oil and salt.
Marinate the chicken with the ginger garlic paste, garam masala, turmeric, ground cumin, ground coriander, salt, lemon juice, Kashmiri red chili powder and full fat Greek yogurt. Marinate overnight or for at least 3 hours.
Broil the marinated chicken on skewers for 15 minutes.
In a pan, heat butter and oil. Add cumin seeds, cardamom pod, bay leaf, cloves, green chilies and turmeric.
Add chopped onion and cook for 5 minutes until lightly browned.
Add the ginger garlic paste and cook for 1 minute.
Add ground cumin, Kashmiri red chili powder, ground coriander, garam masala and stir.
Add canned tomatoes and cashews. Cook for 10-15 minutes until tomatoes are deep red and cashews are soft.
Blend the tomato mixture until smooth.
Pour the blended sauce back into the pot, add more butter, sugar, and the cooked chicken. Cook for 10 minutes with the lid on.
Stir in heavy cream and fenugreek.
Serve the butter chicken over basmati rice, topped with fresh cilantro and garlic naan.
