01 - Combine beef cubes with yogurt, ginger-garlic paste, turmeric, chili powder, and salt in a bowl. Mix thoroughly, cover, and marinate for at least 30 minutes, or up to 2 hours for enhanced flavor development.
02 - Rinse basmati rice under cold running water until water runs clear. Soak in fresh water for 20 minutes, then drain thoroughly.
03 - Heat oil in a large heavy-bottomed pot over medium heat. Add chopped onions and sauté until golden brown, approximately 8 minutes.
04 - Add ginger-garlic paste and sliced green chilies to the onions. Sauté for 1 minute until aromatic.
05 - Add tomatoes, ground coriander, ground cumin, ground cinnamon, garam masala, chili powder, and paprika. Stir continuously until tomatoes soften and break down, approximately 5 minutes.
06 - Add marinated beef and all marinade juices to the spice mixture. Stir thoroughly to coat beef evenly with spices. Cook for 5 minutes until beef surfaces brown.
07 - Pour in stock and bring to a simmer. Cover the pot, reduce heat to low, and cook for 1 to 1.5 hours, stirring occasionally, until beef is tender and sauce thickens. Season with salt to taste.
08 - In a separate saucepan, bring 2 cups water to a boil with salt and oil or ghee. Add drained rice, stir once, cover, and reduce heat to low. Cook for 12-15 minutes until rice is tender and water is fully absorbed. Fluff gently with a fork.
09 - Ladle the hot spicy beef curry over fluffy basmati rice. Garnish generously with fresh chopped cilantro before serving.