01 - Combine beef cubes, yogurt, turmeric, chili powder, and salt in a bowl. Mix thoroughly to coat all pieces. Marinate for at least 30 minutes, or refrigerate up to 2 hours for deeper flavor penetration.
02 - Heat vegetable oil in a large pot or Dutch oven over medium heat. Add finely chopped onions and cook for 8-10 minutes, stirring frequently, until golden brown and caramelized.
03 - Add minced garlic, grated ginger, and chopped green chilies to the pot. Sauté for 2 minutes, stirring constantly, until fragrant and raw garlic aroma dissipates.
04 - Stir in ground cumin, coriander, garam masala, and paprika. Cook for 1 minute, stirring continuously, to toast the spices and release their essential oils.
05 - Add marinated beef cubes to the pot. Brown the meat on all sides, about 5 minutes, to develop flavor through the Maillard reaction.
06 - Pour in diced tomatoes, beef stock, cinnamon stick, and bay leaves. Stir well to combine, scraping up any browned bits from the bottom of the pot. Bring mixture to a gentle simmer.
07 - Cover and reduce heat to low. Simmer for 1 to 1.5 hours, stirring occasionally, until beef is fork-tender and sauce has thickened to a rich consistency. Adjust seasoning with salt and pepper as needed.
08 - While curry simmers, rinse basmati rice under cold water until water runs clear. In a medium saucepan, bring 2 cups water to boil. Add rice and salt, stir once, cover tightly, reduce heat to low, and cook for 12 minutes. Remove from heat and let stand, covered, for 5 minutes before fluffing with a fork.
09 - Serve spicy beef curry over a bed of fluffy basmati rice. Garnish generously with chopped fresh cilantro and accompany with lemon wedges for squeezing over the dish.