Steps
1. Rinse the basmati rice and soak in water for 20 minutes.
2. Marinate chicken with yogurt, ginger garlic paste, turmeric, red chili powder, garam masala, and salt. Set aside for 15 minutes.
3. Heat oil in a pan, add cardamom, cloves, and cinnamon, sauté for 30 seconds.
4. Add sliced onions and fry until golden brown.
5. Add chopped tomatoes and cook until soft.
6. Add marinated chicken and cook until chicken is tender and oil separates.
7. Boil water with a pinch of salt, add drained rice and cook until 70% done, then drain.
8. In a heavy-bottom pot, layer half of the chicken mixture, then half of the rice.
9. Sprinkle half of the cilantro, mint, and saffron milk.
10. Repeat the layers with remaining chicken, rice, herbs, and saffron milk.
11. Cover tightly and cook on very low heat for 20 minutes (dum cooking).
12. Let it rest for 5 minutes, gently fluff the biryani and serve hot.