Rinse the basmati rice thoroughly and soak in water for 15 minutes before cooking.
In a large pot, heat oil over medium heat. Add sliced onions and cook until golden brown.
Add lamb cubes to the pot and brown on all sides.
Stir in ground cardamom, cumin, and coriander, cook for 2-5 minutes, until fragrant.
Add water and cover the pot, allow the meat simmer for approximately 2 hours. You may need to add more water if the water evaporates.
In a separate pan, sauté the chopped carrots in oil until they caramelize slightly.
Add the raisins to the pan with the carrots and cook for 5 minuets, the raisins should swell slightly.
Once the meat is tender, add the soaked and drained rice to the pot with water and bring to boil.
Reduce the heat and simmer until the rice is almost cooked through, then turn off the heat.
Layer the caramelized carrots and raisins over the rice.
Dissolve sugar in a little hot water and pour it over the rice.
Cover the pot and let the rice steam until fluffy.
Gently fluff the rice with a fork, ensuring an even distribution of carrots and raisins.