How to Make It
In a large enameled cast-iron casserole, heat 1/2 cup of the oil. Cook half of the onion rings at a time over moderate heat, stirring occasionally, until deeply browned, about 5 minutes. Using a slotted spoon, transfer the browned onions to paper towels to drain.
Add the lamb to the casserole in batches, season with salt and pepper and brown well on all sides. Transfer the browned lamb to a large plate.
Discard the oil in the casserole and add 1 tablespoon of fresh oil. Add the chopped onions and cook over moderate heat, stirring often, until softened but not browned, about 8 minutes. Add the garam masala, cumin seeds and cinnamon and cook, stirring occasionally, until fragrant, about 4 minutes.
Return the lamb and any accumulated juices to the casserole, add the ginger, garlic, turmeric, cayenne and 1/4 teaspoon of the saffron and cook, stirring often, until fragrant, about 5 minutes. Add the chicken stock and chopped cilantro and bring to a boil. Cover partially and simmer over low heat, stirring occasionally, until the meat is tender and the sauce is flavorful, about 1 1/2 hours.
Meanwhile, in a small skillet, heat the remaining 1 tablespoon of oil. Add the raisins and cook over moderately high heat until browned on 1 side, about 3 minutes. Transfer the raisins to a plate to cool. In a small saucepan, bring the milk to a bare simmer. Remove the pan from the heat and crumble the remaining 1 teaspoon of saffron threads into the milk. Let steep for up to 2 hours.
Preheat the oven to 375°. Put the almonds on a rimmed baking sheet and bake for about 8 minutes, or until toasted. In a large pot of boiling water, cook the rice for 5 minutes, stirring occasionally. Drain in a colander.
Stir the yogurt into the lamb and season with salt and pepper. Carefully mound the blanched rice over the lamb. Using a wooden spoon handle, make a hole in the center of the rice, moving the handle in a circle to widen the hole to about 1 inch. Spoon the saffron milk over the rice in a spokelike pattern. Cover the casserole and bake the rice for 40 minutes. Remove from the oven and let the biryani stand, covered, for 5 minutes.
Arrange the browned onion rings, almonds, raisins, cilantro sprigs and eggs in separate bowls or arrange on a platter. Serve the biryani from the casserole and pass the accompaniments at the table.