Thinly slice the onion and fry till golden brown. Take brown onions out of oil and spread on kitchen towel to drain excess oil. We will use these onions later.
Start with marinating the chicken. Clean the chicken and make slit on chicken pieces with a knife so that the marinade goes well inside the chicken.
Transfer chicken pieces in a mixing bowl, add yogurt, half of the brown onions, cumin powder, coriander powder, red chilli powder, garam masala powder, salt and lemon juice. Chop handful of coriander, mint leaves and green chillies and add to the mixture. Add the mixture well. Don’t hesitate to use hands. Keep it aside for half an hour.
While chicken is marinating soak the rice for at least half an hour.
When chicken is marinated, start with rice. Boil two cups of rice, add black & green cardamoms, bay leaf, cinnamon stick, caraway seed, cloves, salt and ghee or oil. When water is boiled add rice into it. Keep close eye on rice, take it off the flame when rice is 80% and drain excess water. Make sure rice is not over cooked.
Now we start with assembling chicken with rice. Put a heavy bottom pan on medium flame. Add 1 tbsp ghee or oil and transfer the chicken with all of the marinade. Let it cook till water dries out. In the meantime, soak saffron strands in milk. If you like more colour, add pinch of saffron food colour as well in milk.
When water is dried from chicken, add a layer of half of the rice over the chicken. Spread coriander and mint leaves and brown onions over this layer. Place rest of the rice over this layer. Again spread remaining brown onions, coriander and mint leaves. Spread milk & saffron over rice. Also add lemon juice. Add remaining oil by the sides of the pan. Cover the lid of the pan.
Heat a heavy bottom skillet over low flame and place the pan with chicken and rice over it. Let it cook for around 30 minutes. Switch off the flame and let it rest for 5-10 additional minutes before opening the lid.
Garnish with some fresh coriander and roasted nuts while serving.