Wash the rice well and soak it for 30 minutes. Drain the rice and set it aside.
Soak the saffron threads in 2 tablespoons hot water for 15 minutes and crush them slightly.
Heat the oil in a large non-stick pan along with butter. Add chopped garlic and fry for a few seconds or till the raw smell disappears and slightly changes color.
Add sliced onion and sauté till light golden.
Now add the soaked and drained rice and fry the rice for 3 to 4 minutes.
Add chopped tomato, chili powder, cumin powder, soaked saffron, and 4 cups of chicken or vegetable stock (You can also make the stock by dissolving 1 stock cube with 4 cups of hot water).
Taste and adjust the salt. Bring the stock to a boil and then reduce the heat to medium. Place the lid and cook till rice is fully done and all the water has dried up. This will take around 7 to 10 minutes.
Turn off the flame and leave the rice covered for another 10 minutes.
Serve hot with yogurt and grilled chicken.