In a large pot or Dutch oven, heat olive oil over medium-high heat. Add diced onion and sauté for about 4 to 5 minutes until softened. Stir in garlic, and all the spices: garam masala, cumin, curry powder, turmeric, chili powder, salt, and pepper. Cook for 2 to 3 minutes to bloom the spices and build the flavor base.
Add the cubed chicken to the pot and cook for about 2 to 3 minutes until lightly browned on the outside. It doesn’t need to be fully cooked through, just enough to seal in the flavor.
Pour in the rinsed basmati rice, tomato sauce, coconut milk, and chicken broth. Stir everything together and bring to a gentle boil.
Reduce the heat to medium-low. Cover and let cook for about 18 to 22 minutes, or until the rice is tender and most of the liquid is absorbed. Let it rest, covered, off the heat for another 5 minutes before fluffing with a fork.
Top with fresh cilantro and serve hot. For the perfect pairing, enjoy with homemade sourdough naan bread.
Notes
Tips and Variations:
Avoid mushy rice Use long-grain basmati rice and rinse it well to remove excess starch. Avoid stirring too much while it cooks. Letting the dish rest off the heat for 5 to 10 minutes before serving helps the rice finish cooking without going soft.
Spice it up or down Adjust the heat level to your preference. This version has a mild kick, but you can increase the chili powder or add red pepper flakes for more heat. To mellow it out, stir in a spoonful of plain Greek yogurt or coconut cream.
Swap the dairy This recipe uses coconut milk for a rich dairy-free version, but heavy cream or a mix of both can be used if you prefer a more traditional Indian restaurant-style sauce.
Make it meatless Replace chicken with chickpeas or cauliflower for a vegetarian version that still hits all the right flavor notes.
Freeze or double it This is a great recipe to double for meal prep. Store leftovers in an airtight container in the fridge for up to 4 days, or freeze for up to 3 months.