01 - Heat vegetable oil in a large heavy-bottomed pot over medium heat. Add chopped onions and cook until golden brown, approximately 8 minutes.
02 - Incorporate minced garlic and grated ginger, sautéing for 1 minute until fragrant.
03 - Add beef cubes and brown on all sides for about 5 minutes.
04 - Sprinkle curry powder, cumin, coriander, smoked paprika, turmeric, cayenne pepper, salt, and black pepper onto beef. Stir to evenly coat.
05 - Add diced tomatoes, beef broth, and sliced green chilies if using. Stir and bring to a simmer.
06 - Reduce heat to low, cover, and simmer for 1 hour and 15 minutes, stirring occasionally, until beef is tender.
07 - Stir in yogurt or coconut milk and lemon juice. Simmer uncovered for 10 minutes to thicken sauce. Adjust seasoning as needed.
08 - Rinse basmati rice under cold water until clear. In a saucepan, bring water to a boil. Add rice, salt, and butter or oil. Stir once, cover, and reduce heat to low.
09 - Cook rice for 15 minutes then remove from heat and let stand covered for 5 minutes. Fluff rice with a fork before serving.
10 - Plate the beef curry over basmati rice and garnish with chopped fresh cilantro.