Combine the chicken, yogurt, garlic, ginger, biryani masala, turmeric, and half the salt. Refrigerate for at least 1 hour.
Fry the onions in the oil until deep golden. Drain, reserving 3 tablespoons oil in the Dutch oven.
Par-Cook and Layer:
Boil the soaked rice in the water with the remaining salt until about 70 percent cooked, 5 to 6 minutes. Drain.
Spread the chicken and marinade in the Dutch oven. Add half the onions and herbs, then cover with rice. Top with remaining onions, herbs, and saffron milk.
Dum Cook:
Cover tightly and cook over medium heat for 10 minutes, then low heat for 30 minutes until the chicken is cooked through.
Rest covered for 10 minutes, then gently lift and serve the layers.