Afghan Rice Dishes: Kabuli Pulao Recipe

Updated November 3, 2026

Total time
3 hr 5 min
prep 25 min · cook 2 hr 10 min
Serves
6
portions as written
Safe temperature (USDA)
145°F / 63°C
check the thickest piece

Jump to recipe

Afghan Rice Dishes: Kabuli Pulao Recipe

Kabuli pulao is a celebratory Afghan rice dish made with fragrant basmati, tender lamb, sweet carrots and raisins. The rice steams with savory meat broth, then gets topped with the caramelized fruit and vegetables for a satisfying balance of savory, sweet and warmly spiced flavors; family versions vary in their spices and garnishes.

Ingredients

  • 3 cups (570 g) aged basmati rice
  • 6 cups (1.4 L) cool water, for soaking the rice
  • 3 qt (2.8 L) water, for parboiling the rice
  • 2 lb (900 g) boneless lamb shoulder, cut into 1½-inch (4 cm) pieces
  • 2 medium yellow onions (about 300 g), thinly sliced
  • 3 tbsp (45 ml) neutral oil, such as canola oil
  • 4 cups (950 ml) water, for braising the lamb
  • 2 tsp (10 g) fine salt, divided, plus more for the rice water
  • 1 tsp (2 g) ground cumin
  • ½ tsp (1 g) ground cardamom
  • ½ tsp (1 g) ground black pepper
  • ¼ tsp (0.5 g) ground cinnamon
  • 12 oz (340 g) carrots, peeled and cut into thin matchsticks
  • 1 tbsp (12 g) granulated sugar
  • 1 tbsp (15 ml) neutral oil, for the carrot garnish
  • 1 cup (150 g) raisins, preferably golden raisins
  • ⅓ cup (45 g) slivered almonds, or chopped pistachios
  • 2 tbsp (28 g) ghee, melted; use unsalted butter as a substitute
  • 2 whole green cardamom pods, lightly crushed (optional)

Instructions

  1. Rinse and soak the rice. Put the basmati in a large bowl and cover it with cool water. Swish the grains gently with your hand, pour off the cloudy water, and repeat until the water is much clearer. Add the measured soaking water and leave the rice for 30 minutes. This gives the grains a more even texture and helps them cook without breaking. Drain thoroughly before parboiling.
  2. Brown and braise the lamb. Heat 3 tablespoons oil in a heavy, lidded Dutch oven over medium-high heat. Add the sliced onions and cook for 7–8 minutes, stirring, until softened and golden at the edges. Add the lamb in batches if necessary so the pieces brown rather than steam; turn them for about 6–8 minutes in total. Stir in the cumin, ground cardamom, pepper, cinnamon and 1 teaspoon salt. Add 4 cups water, scraping the browned bits from the pot. Bring to a boil, cover, and reduce the heat to maintain a gentle simmer for 75 minutes, until the lamb is tender. Check that the center of a large piece reaches at least 145°F (63°C), the USDA FSIS safe minimum for whole cuts of lamb, followed by a 3-minute rest; the longer braise should make shoulder pleasantly tender. Lift out the lamb and onions with a slotted spoon. Strain and reserve about 1 cup (240 ml) of the broth; save extra broth for another use or freeze it.
  3. Make the carrot and raisin topping. While the lamb braises, heat 1 tablespoon oil in a skillet over medium heat. Add the carrots and sugar and cook for 5–7 minutes, stirring gently, until softened but not mushy. Add the raisins and 2 tablespoons water, cover, and cook for 2 minutes to plump them. Remove the pan from the heat. Keep the carrots and raisins together or set aside a little of each for the final garnish.
  4. Parboil the rice. Bring the 3 quarts water to a rolling boil in a large pot and salt it generously, as you would pasta water. Drain the soaked rice, add it to the boiling water, and stir once so the grains do not settle. Boil uncovered for 5–7 minutes. Test a grain: the outside should be tender, but the center should still feel firm. Drain immediately in a fine-mesh colander. Avoid cooking it fully at this stage, because the rice finishes by steaming with the lamb broth.
  5. Layer the pulao. Return the lamb and onions to the Dutch oven, spreading them across the bottom. Scatter the carrot and raisin mixture over the meat. Spoon the drained rice on top and shape it into a loose mound without pressing it down. Drizzle the reserved cup of broth and melted ghee over the rice. If using the optional cardamom pods, tuck them into the rice. Taste a drop of broth and add the remaining teaspoon of salt only if needed; the parboiling water and meat may already have seasoned it sufficiently.
  6. Steam until fluffy. Make 4 or 5 small holes through the rice mound with the handle of a wooden spoon so steam can circulate. Cover the pot tightly; if the lid does not fit snugly, place a clean kitchen towel over the pot before setting on the lid, keeping the towel ends away from the burner. Cook over the lowest heat for 22 minutes. Turn off the heat and leave the pot covered for 5 minutes, then lift the lid carefully to let excess steam escape.
  7. Serve the rice. Gently lift and fluff the rice with a fork, keeping the grains as intact as possible. Spoon the lamb onto a large platter, mound the rice over it, and arrange the carrots and raisins on top. Scatter over the almonds or pistachios and serve while hot. A few spoonfuls of broth may be served on the side for anyone who likes a moister plate.

Tips

  • Choose the right rice. Aged basmati is especially suitable because its long grains stay separate after steaming. If you only have regular basmati, use it, but handle it gently and begin checking the parboiling stage at 5 minutes. Jasmine rice is not an ideal swap: it is softer and more fragrant, so the finished pulao will be less traditionally fluffy.
  • Keep the simmer gentle. A hard boil can make lamb tough and evaporate the braising liquid too quickly. The pot should show only occasional small bubbles. If the lamb is not tender after 75 minutes, cover and continue simmering in 10-minute increments; add a splash of water if the pot is getting dry.
  • Do not overcook the rice before steaming. The parboiled grains should still have a firm center. If they are soft all the way through before layering, they are likely to break or turn sticky during the final steam. Drain as soon as they reach the partly cooked stage.
  • Adapt the ingredients thoughtfully. Ghee adds a rounded, buttery aroma; melted unsalted butter works, though it tastes slightly different. Slivered almonds are easy to find, while pistachios make a good alternative. If green cardamom pods are unavailable, omit them rather than adding a large amount of extra ground spice.

Serving Suggestions

Serve Kabuli pulao as the centerpiece of a meal, with the lamb nestled under the rice and the sweet carrot-raisin topping clearly visible. Its savory broth and dried fruit make it substantial, so simple, crisp sides work particularly well. Offer a plate of sliced cucumber and tomato, a leafy salad with lemon, or plain yogurt seasoned with a pinch of salt and dried mint. These cool, fresh accompaniments bring contrast without competing with the spices.

For a larger Afghan-inspired spread, serve the pulao alongside bolani, thin filled flatbreads, or a small bowl of chutney. Put extra broth on the table in a warmed jug, and let guests add a little to their own serving if they prefer softer rice. For a dinner party, arrange the rice on a broad platter just before serving so the raisins and carrots stay colorful and the grains do not sit compressed in the cooking pot.

Variations

Afghan rice dishes have regional and family variations, and the exact balance of spice, sweetness and garnish is not fixed. This version uses lamb shoulder and a modest amount of cinnamon and cardamom. For a different traditional-style result, use bone-in lamb pieces and increase the braising time until the meat is tender, then remove the bones before layering. Bone-in cuts can make a richer broth, but their cooking time varies with size, so judge tenderness rather than relying only on the clock.

For a chicken version, substitute 2 lb (900 g) bone-in chicken thighs for the lamb and use chicken broth or water. Chicken cooks more quickly, so simmer until the thickest part reaches 165°F (74°C) on a food thermometer, then proceed with the rice. The flavor will be lighter and less rich. For a meatless variation, leave out the lamb and braise sliced onions with 2 cups (300 g) cooked chickpeas, 1 cup (150 g) diced mushrooms, and 2 cups (475 ml) vegetable broth. Use the same layering and steaming method, checking that the rice is tender and adding a little hot broth if the pot seems dry.

Some cooks include a pinch of saffron steeped in 2 tablespoons (30 ml) hot water and drizzled over part of the rice before steaming. It adds a floral aroma and golden streaks, but it is optional and not a substitute for the savory lamb broth. You can also change the dried fruit: chopped dried apricots in place of some raisins make the topping tangier and chewier. Keep the total dried fruit close to 1 cup (150 g) so it does not overwhelm the rice.

Storage and Reheating

Refrigerate leftovers within 2 hours of cooking, preferably in shallow, airtight containers so they cool promptly. The rice and lamb keep for 3–4 days in the refrigerator. If storing the topping separately, it is easier to preserve its texture, but it is also fine to pack complete portions together. Freeze leftovers in airtight containers for up to 2 months for best quality; thaw overnight in the refrigerator. Rice can dry out or become a little softer after freezing, so add a splash of water or broth when reheating.

Reheat only the portion you plan to eat. On the stovetop, place rice and lamb in a covered pan with 1–2 tablespoons water or broth per serving, and warm over low heat, stirring gently once or twice. In a microwave, cover loosely and heat in short intervals, stirring between them so the center warms evenly. Reheat leftovers to 165°F (74°C), checking with a food thermometer. Do not leave cooked rice at room temperature for extended periods; return any uneaten serving to the refrigerator promptly.

Frequently Asked Questions

What is the difference between Kabuli pulao and other Afghan rice dishes?

Kabuli pulao is a well-known Afghan rice preparation distinguished by its combination of basmati, meat broth, and a sweet topping such as carrots and raisins. Other Afghan rice dishes and family versions may use different meats, vegetables, spices or garnishes. The name and exact presentation can vary, so this recipe is one home-cook-friendly version rather than a claim that every Afghan pulao is made the same way.

Can I make the lamb ahead of time?

Yes. Braise the lamb and onions a day ahead, cool them promptly, and refrigerate them with their broth. When ready to finish, bring the lamb and broth back to a simmer, then layer with freshly parboiled rice and the carrot-raisin topping. The braising liquid may set slightly when chilled; that is normal. Measure out a cup for the recipe and warm it so it pours easily over the rice.

Why did my pulao turn sticky or break apart?

The most common causes are rice that was not rinsed well, parboiled too long, or stirred vigorously after cooking. Drain the soaking water, boil only until the grain is partly cooked with a firm center, and let the rice steam undisturbed under a tight lid. When serving, fluff from the edges with a fork rather than stirring the whole pot repeatedly.

Can I use a different cut of lamb?

Boneless shoulder is convenient and becomes tender during a covered braise. Lamb leg can work, though it is leaner and may not become as succulent with the same long simmer; begin checking earlier. Bone-in shoulder also works, but allow for bones when estimating servings and remove them before assembling the rice. Whatever cut you use, check its temperature and tenderness before layering.

Can I make this recipe without nuts or raisins?

Yes. Omit the almonds or pistachios for a nut-free version, and leave out the raisins if you prefer a less sweet pulao. The dish will still have its fragrant rice and savory lamb, while the carrot topping adds some sweetness. If avoiding nuts because of an allergy, check ingredient labels and prevent cross-contact with utensils and work surfaces.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).