Combine lamb, ginger, garlic, chillies, garam masala, coriander, turmeric, chilli powder, salt and yogurt in a medium bowl; cover and refrigerate overnight.
Heat half the ghee in a large heavy-based saucepan; fry almonds and sultanas until browned lightly, remove from pan with a slotted spoon.
Heat remaining ghee in same pan; add onion, cook, covered, over medium heat for about 5 minutes or until onion is soft. Remove lid, cook for a further 5 minutes or until onions are lightly browned. Remove half the onion mixture from the pan.
Add the lamb mixture to onion in pan, cook, stirring, until lamb is browned lightly. Add water, bring to the boil then simmer, covered, over low heat, stirring occasionally, for 1 hour. Remove lid, simmer, uncovered, for a further 30 minutes or until the lamb is tender. Season to taste with salt and pepper.
Meanwhile, cook the rice in boiling salted water for about 5 minutes or until half-cooked; drain.
Combine the saffron and milk in a small bowl, stand for 15 minutes.
Preheat the oven to moderate (180'C/160'C fan-forced). Spread half the lamb mixture into a greased ovenproof dish (3.5 litre/14cup capacity), top with half the rice, then remaining lamb and rice. Drizzle saffron and milk mixture over the rice; cover tightly with greased foil and lid. Bake in a moderate oven for about 40 minutes or until rice is tender.
Serve biryani topped with reheated reserved onions, almond mixture and extra coriander leaves.
suitable to freeze. Not suitable to microwave.
Cook's note: If you are unable to find garam masala, grind together 1 teaspoon fennel seeds, ½ teaspoon caraway seeds, ½ teaspoon ground cinnamon, ⅜ teaspoon black peppercorns, ⅜ teaspoon cloves and ⅜ teaspoon cardamom seeds.
Wine match: The sweet flavours of the lamb, the spicing and texture of this dish cry out for a shiraz.
Photography: Brett Stevens. Styling: Yael Grinham.