Fragrant, layered rice with tender spicy chicken at the bottom, this recipe promises an authentic Biryani experience.
Place chicken thighs into a medium size bow, or into a large ziplock bag; set aside. In a small food processor, blend garlic and ginger into a paste. Add to bowl with chicken thighs along with the juice of 1/2 lemon. Stir well to combine and coat the chicken. Add spices, yogurt, half of the chopped cilantro and chilies. Stir to combine and marinate for a minimum of 30 minutes, or overnight in the fridge.
Peel and thinly slice the onions. Melt Ghee in a large frying pan and bring to high heat; add about 2 tbsp vegetable oil and the onions. Fry until golden and crisp. Remove from pan with a slotted spoon to a small plate and reserve. Next, add the almonds to the pan and stir until golden on both sides. Remove and set aside on another small plate. Reserve the Ghee/oil mixture from the pot into a small heat-safe container.
Rinse the rice, then place into a large bowl. Add water and soak rice for 30 minutes.
Add 3 tbsp reserved ghee to a large dutch oven, and heat to medium-high. Transfer marinated chicken to the pot, and cook for about 10 minutes.
Fill a medium pot of water set over high heat. Add Bay leaves, cloves, cinnamon, caraway, cardamon, salt, and the juice from 1/2 lemon. Bring to a boil. Drain the rice, and add it to the boiling water. (Cook it like pasta, draining excess water when it's ready). Start testing the rice at about 8 minutes—it's ready when it's possible to crush the rice, but it remains firm in the centre. You are aiming for it to be about 2/3 cooked. It shouldn't need to cook more than 10 minutes.
Drain the rice, and use a slotted spoon to transfer about half of the rice on top of the chicken mixture. Spread remaining fried onions and cilantro on top in an even layer. Transfer the remaining rice to the pot in an even layer. Sprinkle with a bit of rosewater, garam masala, fried almonds and mace pieces. Finish by spooning the saffron milk over everything. Cover the pot tightly, or place a damp towel between the pot and the lid to seal. Cook for five minutes on high. Lower heat to medium and cook for another 15 minutes, then reduce heat to low for 10 minutes. Finally, turn off heat and allow to rest for 10 minutes. Serve and enjoy with cooling raita!