Step 1: Wash the basmati rice thoroughly and soak it in water for 20 minutes. Drain and set aside.
Step 2: Heat oil or ghee in a heavy-bottomed pot over medium heat. Add cumin seeds, bay leaf, cardamom, cloves, cinnamon, and peppercorns. Sauté until aromatic.
Step 3: Add sliced onions and cook until golden brown. Add ginger-garlic paste and green chilies, sautéing for another minute.
Step 4: Add chicken pieces and cook until they are lightly browned and coated with spices.
Step 5: Stir in yogurt, salt, and garam masala. Cook for 3–4 minutes until the mixture thickens slightly.
Step 6: Add water or chicken stock and bring to a gentle boil.
Step 7: Add the soaked rice, stir gently, cover, and cook on low heat for 15–18 minutes until rice is fully cooked and water is absorbed.
Step 8: Turn off heat and let the pulao rest for 5–10 minutes. Fluff gently with a fork.