01 - Combine chicken with yogurt, lemon juice, turmeric, and salt in a bowl. Mix thoroughly and marinate for at least 15 minutes to tenderize and infuse flavors.
02 - Rinse basmati rice until water runs clear. Bring 3 cups water and 1/2 tsp salt to a boil in a saucepan. Add rice, cover, reduce heat, and simmer for 15 minutes. Remove from heat and let stand covered for 5 minutes. Fluff with a fork before serving.
03 - Heat oil or ghee in a large skillet over medium heat. Add chopped onions and sauté until golden brown, approximately 6 minutes, stirring occasionally to prevent burning.
04 - Add minced garlic and grated ginger to the skillet. Sauté for 1 minute until fragrant, being careful not to burn the garlic.
05 - Stir in curry powder, cumin, coriander, cayenne, chili flakes, and black pepper. Cook for 1 minute, stirring constantly to release essential oils and prevent scorching.
06 - Add diced tomatoes and cook until softened and juices are released, about 4 minutes. The tomatoes should break down slightly to form the base of the sauce.
07 - Add marinated chicken pieces to the skillet, stirring to coat thoroughly with the spice mixture. Cook for 5 minutes until chicken begins to brown on all sides.
08 - Pour in coconut milk and chicken stock. Bring to a simmer, cover, and cook for 15 minutes, stirring occasionally. Ensure chicken is cooked through to an internal temperature of 165°F and sauce has thickened.
09 - Taste and adjust salt or spice levels as desired. Serve hot curry over steamed rice, garnished generously with fresh chopped cilantro.