Main Course

Kalam Polo with Beef: Persian Cabbage Rice with Tender Beef

Original name: Kalam Polo with Beef

A bowl of Kalam polo with beef, showing golden basmati rice, caramelized cabbage, and tender beef pieces, garnished with barberries and a sprinkle of saffron.
Prep
20 minutes
Cook
1 hour 30 minutes
Servings
6
PersianMediumDinnerDairy Free

About this dish

Kalam polo is a beloved Persian rice dish where saffron-scented basmati rice is layered with caramelized cabbage and tender beef, all slowly steamed until the flavors meld into a golden, fragrant masterpiece. The gentle sweetness of the cabbage, the warmth of cinnamon and turmeric, and the richness of beef broth create a comforting meal that feels both rustic and refined.

Perfect for a leisurely weekend dinner, this dish celebrates the art of slow cooking and the beauty of simple ingredients.

Ingredients

UK and US measurements are both included for every recipe.

basmati rice

grain

3 cups (600 g)

Imperial measurement: 3 cups

beef chuck, cut into 1-inch cubes

protein

450 g

Imperial measurement: 1 lb

green cabbage, thinly sliced

vegetable

1 small head (about 700 g)

Imperial measurement: 1 small head (about 1.5 lb)

yellow onion, finely chopped

vegetable

1 large (about 200 g)

Imperial measurement: 1 large

garlic, minced

herb

3 cloves

ground turmeric

spice

1 teaspoon

ground cinnamon

spice

1/2 teaspoon

ground black pepper

spice

1/2 teaspoon

salt

seasoning

1 1/2 teaspoons, or to taste

saffron threads

spice

1/2 teaspoon, ground and dissolved in 3 tablespoons hot water

Imperial measurement: 1/2 teaspoon

vegetable oil

fat

5 tablespoons (75 ml)

Imperial measurement: 5 tablespoons

water

liquid

for blanching and steaming (as needed)

barberries, for garnish (optional)

fruit

2 tablespoons

Method

1

Prepare the rice

30 minutes

Rinse the rice in cold water until the water runs clear. Soak in salted water (1 tablespoon salt per 4 cups water) for at least 30 minutes.

2

Brown the beef

10 minutes

In a large pot, heat 2 tablespoons of oil over medium heat. Add the beef cubes and brown on all sides, working in batches if needed. Remove the beef and set aside.

3

Sauté the aromatics

6 minutes

In the same pot, add the remaining 1 tablespoon oil and sauté the onion until soft and translucent, about 5 minutes. Add the garlic, turmeric, cinnamon, and black pepper, and cook for 1 minute until fragrant.

4

Simmer the beef

1 hour

Return the beef to the pot along with 2 cups of water and 1 teaspoon of salt. Bring to a boil, then reduce the heat to low, cover, and simmer for about 1 hour, until the beef is tender.

5

Blanch the cabbage

5 minutes

While the beef simmers, bring a large pot of salted water to a boil. Add the sliced cabbage and blanch for 2 minutes. Drain well and set aside.

6

Cook the cabbage

10 minutes

In a large skillet, heat 1 tablespoon of oil over medium heat. Add the blanched cabbage and sauté for about 10 minutes, until it begins to caramelize and turn golden. Season with a pinch of salt. Set aside.

7

Partially cook the rice

10 minutes

Drain the soaked rice. Bring a pot of salted water (about 8 cups) to a boil. Add the rice and cook for 5-6 minutes, until the grains are tender but still firm. Drain thoroughly.

8

Layer the rice

10 minutes

In a heavy-bottomed pot, heat 1 tablespoon oil over medium heat. Spread a layer of the par-cooked rice on the bottom. Add a layer of the sautéed cabbage, then a layer of beef cubes (reserve some for the top). Repeat the layers, ending with a final layer of rice. If you have any leftover cabbage, tuck it in.

9

Add the saffron and steam

2 minutes

Pour the saffron liquid over the top of the rice. Drizzle with the remaining 1 tablespoon oil. Add about 3 tablespoons of water around the edges.

10

Steam the rice

30 minutes

Wrap the pot lid in a clean kitchen towel and cover tightly. Steam over low heat for about 30 minutes, until the rice is tender and aromatic. The towel will absorb excess moisture.

11

Rest and serve

10 minutes

Allow the dish to rest for 5-10 minutes. Gently fluff the rice with a fork, being careful not to break the grains. Transfer to a serving platter, arranging the beef on top. Garnish with barberries if using.

Equipment

  • Large pot
  • Colander
  • Large skillet
  • Rice spoon or spatula
  • Pot with tight-fitting lid

Nutrition facts

420 kcal
Calories
28 g
Protein
55 g
Carbohydrates
16 g
Fat
5 g
Fiber
620 mg
Sodium

Tips

  • For the best texture, use high-quality basmati rice and do not skip the soaking – it helps the grains stay separate and fluffy.
  • Blanching the cabbage before sautéing removes some of its raw tang and helps it soften without becoming mushy.
  • If you prefer a crisp golden crust (tahdig), let the rice cook a few minutes longer on medium heat before steaming, until a gentle crust forms at the bottom.
  • For a vegetarian version, you can replace the beef with mushrooms or use a vegetable broth and skip the meat, still keeping the aromatic spices.

Serving suggestions

  • Serve kalam polo warm, alongside a simple cucumber yogurt salad (maast-o-khiar) and fresh herbs. It also pairs beautifully with grilled tomatoes or a light Shirazi salad.

Rate this recipe

No ratings yet. Be the first to rate it.

Eleni Demetriou

Recipe by

Eleni Demetriou

Specialises in Greek cuisine

Eleni Demetriou runs a food blog called 'Olive My Love'. She photographs every meal for 20 minutes before eating.

Describe yourself in three words: Romantic, slow, loves golden hour.