Soup-e Gusht va Sibzamini (سوپ گوشت و سیبزمینی) – Persian Meat and Potato Soup
A comforting Persian winter soup of tender beef, potatoes, and celery simmered until silky, then finished with a buttery flour roux and warm milk for a velvety, savory bowl of classic home cooking.

Printable Recipe Card
Servings: 6 · Total: 110 min · Difficulty: medium
Ingredients (quick list)
- 450 g Beef chuck, boneless, cut into 2 cm cubes (Trim excess surface fat; uniform cubes cook evenly)
- 200 g Yellow onion, finely diced (About 1 large onion)
- 150 g Celery stalks, finely sliced (About 3 medium stalks; include tender leaves if available)
- 500 g Potatoes, peeled and diced (1.5 cm) (Waxy or all-purpose potatoes hold shape yet puree smoothly)
- 1200 ml Water (Add more during simmering if needed)
- 10 g Fine sea salt (About 1 3/4 tsp; adjust to taste at the end)
- 2 g Black pepper, freshly ground (About 1 tsp)
- 45 g Unsalted butter (Divided; for sautéing and roux)
- 30 g All-purpose flour (About 1/4 cup; for thickening)
- 480 ml Whole milk (Warm before adding to prevent splitting)
Steps (summary)
- In a heavy pot over medium heat, melt 15 g butter. Add diced onion and sauté for 8 minutes until translucent and lightly golden…
- Add the beef cubes, 6 g of the salt, and all the black pepper. Increase heat to medium-high and stir for 6–8 minutes until the…
- Reduce heat to low, cover with the lid slightly ajar, and simmer gently for 55 minutes, stirring every 15 minutes. Keep the sur…
- Add the diced potatoes and simmer uncovered for 18–22 minutes, until the potatoes are very tender and the beef yields easily to…
- In a small saucepan over medium-low heat, melt the remaining 30 g butter. Add the flour and whisk continuously for 2–3 minutes…
- Pour the milk-roux into the soup in a thin stream while stirring constantly. Simmer on low for 8 minutes, stirring often, until…
Cultural Background
Soups like Soup-e Gusht va Sibzamini are classic Iranian cold-season comfort foods, often made at home for their nourishing warmth and gentle flavors. The technique of finishing with a butter-flour base reflects a Persian preference for smooth, cohesive textures served with fresh bread and herbs.
Equipment
💡 Tips
- For the silkiest finish, warm the milk to 50–60°C before whisking it into the roux, and keep the soup at a gentle simmer after adding dairy.
- If you prefer a thicker, chowder-like bowl, blend a larger portion (up to half) of the soup; for a brothier version, blend only 1 cup and add 100–200 ml hot water.
- Cut potatoes evenly (about 1.5 cm) so they soften at the same time as the meat becomes tender.
- Skimming the initial foam after boiling yields a cleaner flavor and a more elegant, pale soup—especially important for a milk-finished soup.
⚠️ Common Mistakes
❌ Boiling the soup hard after adding milk
💡 Why: High heat can cause the dairy to split and the texture to turn grainy.
✅ Fix: Keep the soup at a gentle simmer (low heat) and stir frequently; if it starts to split, whisk in 60 ml warm milk off-heat.
❌ Adding milk directly to the pot without a roux
💡 Why: Milk alone can thin out and may curdle more easily, giving less body and less stable creaminess.
✅ Fix: Make a pale blond roux with butter and flour, then whisk in warm milk before incorporating into the soup.
❌ Undercooking the beef before adding potatoes
💡 Why: Potatoes can turn mushy while the meat remains chewy if simmer times are not staged.
✅ Fix: Simmer the beef first until nearly tender (about 55 minutes), then add potatoes for the final 18–22 minutes.
❌ Skipping the foam skim at the first boil
💡 Why: Impurities can make the broth cloudy and the flavor slightly harsher, especially noticeable in a pale, milk-finished soup.
✅ Fix: Boil 5 minutes, skim thoroughly, then reduce to a gentle simmer.
🧊 How to Store
Cool completely, then refrigerate in an airtight container for up to 3 days. Reheat gently over low heat, stirring frequently; if it thickens, loosen with 60–120 ml water or milk. Freeze up to 2 months, but note dairy may slightly grain on thawing—reheat slowly and whisk to smooth.
📅 Make Ahead
Cook the soup base (through Step 4) up to 1 day ahead and refrigerate. Reheat gently, then prepare the roux and add it just before serving for the freshest, smoothest texture. If made fully ahead, reheat on low and whisk well; add 60–120 ml milk to restore creaminess.
🍽️ Pairs Well With
- Sangak or Barbari bread
- Fresh herbs (sabzi khordan: basil
- mint
- radish)
- Torshi (Persian pickles) for contrast
Regional Variations
- Tehran (home-style)Often kept very mild and creamy, with a larger portion blended for a thicker, velouté-like texture and served with plenty of bread.
- Azerbaijan (Northwest Iran)Commonly made with lamb instead of beef and sometimes finished slightly thicker, emphasizing a hearty, warming bowl for colder climates.
Ingredients
- 450 gBeef chuck, boneless, cut into 2 cm cubes (Trim excess surface fat; uniform cubes cook evenly)
- 200 gYellow onion, finely diced (About 1 large onion)
- 150 gCelery stalks, finely sliced (About 3 medium stalks; include tender leaves if available)
- 500 gPotatoes, peeled and diced (1.5 cm) (Waxy or all-purpose potatoes hold shape yet puree smoothly)
- 1200 mlWater (Add more during simmering if needed)
- 10 gFine sea salt (About 1 3/4 tsp; adjust to taste at the end)
- 2 gBlack pepper, freshly ground (About 1 tsp)
- 45 gUnsalted butter (Divided; for sautéing and roux)
- 30 gAll-purpose flour (About 1/4 cup; for thickening)
- 480 mlWhole milk (Warm before adding to prevent splitting)
🔄 Substitutions
- Beef chuck→ Lamb shoulder, 450 g
- Whole milk→ 2% milk, 480 ml
- All-purpose flour→ Rice flour, 28 g
Instructions
- 1
In a heavy pot over medium heat, melt 15 g butter. Add diced onion and sauté for 8 minutes until translucent and lightly golden at the edges. Stir in sliced celery and cook 4 minutes more, scraping the bottom so the vegetables soften without browning too hard, which can darken the soup’s color.
- 2
Add the beef cubes, 6 g of the salt, and all the black pepper. Increase heat to medium-high and stir for 6–8 minutes until the meat loses its raw color and a light fond forms. Pour in 1200 ml water, bring to a strong boil for 5 minutes, then skim any foam for a cleaner, smoother broth.
- 3
Reduce heat to low, cover with the lid slightly ajar, and simmer gently for 55 minutes, stirring every 15 minutes. Keep the surface at a quiet bubble; rapid boiling can toughen the meat and make the broth cloudy. If the liquid drops below the meat, add 100–200 ml hot water.
- 4
Add the diced potatoes and simmer uncovered for 18–22 minutes, until the potatoes are very tender and the beef yields easily to a spoon. Taste the broth and add the remaining 4 g salt if needed. Turn heat to the lowest setting while you prepare the roux so nothing overcooks.
- 5
In a small saucepan over medium-low heat, melt the remaining 30 g butter. Add the flour and whisk continuously for 2–3 minutes until the mixture smells nutty and turns pale blond (do not let it brown). Slowly whisk in 480 ml warm milk in 3 additions, whisking 4–5 minutes until smooth and lightly thickened.
- 6
Pour the milk-roux into the soup in a thin stream while stirring constantly. Simmer on low for 8 minutes, stirring often, until the soup becomes velvety and lightly coats the back of a spoon. For a classic Persian texture, blend 2 cups of soup until smooth, then stir it back in and reheat 2 minutes.
🪪 Recipe Passport
Cultural Background
Soups like Soup-e Gusht va Sibzamini are classic Iranian cold-season comfort foods, often made at home for their nourishing warmth and gentle flavors. The technique of finishing with a butter-flour base reflects a Persian preference for smooth, cohesive textures served with fresh bread and herbs.
Regional Variations
Researched from multiple sources and validated by the Zaffaron editorial team. Every recipe is tested for accuracy, measurements, and cultural authenticity.
Nutrition per serving
Pairs well with
If you enjoyed this recipe, here are a few related Zaffaron recipes to try next.
Does your family make this differently?
Every family has their own version. Maybe your grandmother adds a secret ingredient, or your aunt has a completely different technique. Preserve your family's version — with their name on it, forever.
You Might Also Like

Persian Kachi (کاچی) — Saffron Rosewater Pudding
Persian · Desserts · 45 min

Persian Khoresht Saak (خورش ساک) — Saffron-Cardamom Lamb Stew with Saak Greens
Persian · Stews · 145 min

Khoresh Tareh Farangi (خورش تره فرنگی) — Persian Leek and Lamb Stew
Persian · Stews · 130 min

Khao Poon (ເຂົ້າປຸ້ນ) — Lao Coconut Curry Rice Vermicelli Soup
Laotian · Soups · 90 min

Buddha Jumps Over the Wall (佛跳墙) — Fujian Banquet Treasure Soup
Chinese · Soups · 540 min

Azerbaijani Milk Rice Porridge (Südlü Sıyıq) — Creamy Breakfast Bowl
Azerbaijani · Rice Dishes · 40 min

Turkish Menemen (Menemen) — Soft Eggs with Tomatoes and Peppers
Turkish · Main Courses · 37 min

Khashlama (Խաշլամա) — Armenian Lamb and Vegetable Stew
Armenian · Stews · 160 min
Reviews
Cooked this recipe?
Tap the stars to rate it — that's all it takes. A few words are welcome but optional.
No ratings yet. Cooked this one? Be the first to rate it — it takes one tap.