Prepare marinade: In a bowl, whisk together yogurt, ginger garlic paste, lemon juice, Kashmiri red chilli powder, turmeric powder, coriander powder, red chilli powder, pink salt, and dried fenugreek leaves.
Marinate chicken: Add chicken cubes to the marinade, mix well, cover, and marinate for 30 minutes.
Cook marinated chicken: In a wok, heat 2 tablespoons cooking oil, add marinated chicken, mix well, and cook on medium flame until chicken is tender (about 10-12 minutes). Then increase to high flame and cook until the chicken dries up.
Add coal smoke: Give coal smoke to the cooked chicken for 2 minutes to infuse smoky flavor, then set aside.
Prepare sauce base: In a saucepan, heat 1 tablespoon cooking oil, add cumin seeds, cinnamon sticks, cloves, bay leaf, sliced garlic, and ginger. Sauté for 1 minute.
Cook vegetables and spices: Add tomatoes, chopped onion, sliced green chillies, cashew nuts, dried red chillies, fresh coriander, pink salt, and water. Mix well, cover, and cook on medium flame for 8-10 minutes.
Blend sauce: Turn off the flame and blend the cooked mixture well. Set aside.
Cook sauce with butter: In the same wok used for chicken, add butter and let it melt. Add the blended sauce through a sifter, mix well, and cook on medium flame for 2-3 minutes. Cover and cook on low flame for 12-15 minutes.
Add cream: Turn off the flame, add cream, and mix well.
Combine chicken and sauce: Turn on the flame, add the cooked chicken, mix well, and cook on low flame for 4-5 minutes.
Final seasoning and simmer: Add dried fenugreek leaves, cover, and simmer on low flame for 1 minute.
Serve: Serve butter chicken with boiled rice and garlic naan. Garnish with fresh coriander, butter, and cream.