To begin, rinse the basmati rice thoroughly under cold water until the water runs clear. Soak the rice in water for 20 minutes, then drain and set it aside. Soaking the rice helps it cook evenly and stay fluffy.
In a large pan or heavy bottomed pot, heat 2 tablespoons of ghee or vegetable oil over medium heat. Once hot, add cumin seeds, cinnamon stick, cardamom pods, cloves, and the bay leaf. Sauté for about 1 minute until the spices release their aroma, creating a fragrant base for the pulao.
Add the thinly sliced onion to the pan and cook, stirring frequently, until the onion turns golden brown, about 5-7 minutes. This step develops a deep flavour, so ensure the onions caramelize properly without burning.
Next, add the ginger-garlic paste and sauté for 2 minutes until the raw smell disappears. Stir frequently to prevent it from sticking to the pan.
If using vegetables, add them to the pan at this stage (if using chicken or lamb, add it instead). Stir to coat the vegetables or meat with the fragrant spices. Cook for 5-7 minutes, allowing the meat to brown slightly or the vegetables to soften.
Sprinkle in the turmeric powder, garam masala, and salt. Mix well, ensuring the spices coat the vegetables or meat evenly. This step helps in infusing the spiced flavors thoroughly.
Add the soaked and drained rice to the pan and stir gently to combine it with the spiced vegetables or meat. Cook for 2-3 minutes, allowing the rice to absorb the flavors of the spices.
Pour 3 cups of water or broth into the pot. Bring the mixture to a boil, then reduce the heat to low. Cover the pan with a tight fitting lid and let it simmer for 15-20 minutes, or until the rice is fully cooked and the liquid is absorbed. Turn off the heat and let it sit, covered, for another 5 minutes.
Fluff the pulao gently with a fork to separate the grains, then garnish with freshly chopped coriander. Serve hot, pairing it with cooling yogurt or a tangy side like pickle or chutney for contrast.