7 cups water
2 onions, chopped
1 tbsp chopped garlic
1 tsp ground cinnamon
1 tsp ground turmeric
2 tsp garam masala
1 pinch salt and ground black pepper to taste
2 cups cooking oil
2 cups lamb
Bring to a boil the water, onion, garlic, cinnamon, turmeric, garam masala, salt, and pepper in a large pot. Add the lamb; reduce the heat to low and simmer 15 to 20 minutes. Separate the lamb from the liquid and set aside. Transfer the liquid to a bowl.
While the lamb mixture simmers, heat the oil in a large, deep skillet over medium heat. Fry the eggplant slices in the hot oil, ensuring the pieces do not touch, until brown on both sides; remove to a plate lined with paper towels to drain. Use the same procedure to fry the zucchini and the cauliflower. Cook the broccoli in the oil until hot and remove to a paper towel-lined plate to drain.
Layer the lamb into the bottom of the large pot. Arrange the eggplants, zucchini, broccoli, and cauliflower on top of the beef in layers. Pour the rice over the beef and vegetables, shaking the pot gently to allow the rice to settle into the dish. Pour the reserved liquid from the beef over the mixture until it is completely covered. Add water if needed.
Cover the pot and simmer over low heat until the rice is soft and the liquid is absorbed. This might take 30 to 45 minutes. Remove the lid from the pot. Place a large platter over the pot and flip the pot so the dish is ‘upside down’ on the platter. Serve with yoghurt on the side.