Khorak Makaroni va Broccoli (خوراک ماکارونی و بروکلی) — Persian-Style Pasta in Garlic Tomato Sauce
A modern Persian home-cooking khorak where pasta and broccoli are simmered in a garlic-forward tomato sauce. Chicken broth adds depth while Parmesan brings a contemporary, creamy-savory finish.

Printable Recipe Card
Servings: 4 · Total: 45 min · Difficulty: easy
Ingredients (quick list)
- 320 g Shaped pasta (penne or fusilli) (Short shapes hold the sauce best)
- 12 g Salt (For salting the boiling water)
- 350 g Fresh broccoli florets (Cut into bite-size florets; include some tender stems)
- 30 ml Olive oil
- 150 g Yellow onion (Finely diced)
- 18 g Garlic (About 6 cloves, finely minced)
- 60 g Tomato paste (Cook it in oil to remove raw taste)
- 360 ml Chicken broth (Low-sodium preferred)
- 2 g Black pepper (Freshly ground (about 1 tsp))
- 2 g Dried oregano (Optional but common in modern Iranian kitchens)
- 15 g Unsalted butter (Adds gloss and rounds the tomato)
- 60 g Parmesan cheese (Finely grated, plus extra for serving if desired)
+ 1 more in the full ingredients section below.
Steps (summary)
- Bring 3 liters of water to a rolling boil in a large pot and dissolve 12 g salt in it. Add 320 g shaped pasta and cook for 2 mi…
- During the last 3 minutes of pasta cooking, add 350 g broccoli florets to the same pot to blanch them. Drain pasta and broccoli…
- Heat 30 ml olive oil in a wide skillet over medium heat, then add 150 g diced onion and cook for 6–8 minutes until soft and lig…
- Add 60 g tomato paste and cook it in the oil for 2–3 minutes, stirring constantly, until it darkens slightly and smells sweet r…
- Pour in 360 ml chicken broth and whisk to dissolve the tomato paste into a smooth sauce. Add 2 g black pepper and 2 g dried ore…
- Add the drained pasta and broccoli to the skillet and toss until everything is evenly coated. If the sauce looks tight, add res…
+ 1 more steps in the full instructions section below.
Cultural Background
Khorak dishes are everyday Iranian comfort foods served with bread or rice, built around a flavorful sauce. This pasta version reflects contemporary Persian home kitchens, where Italian pantry staples meet the familiar technique of frying tomato paste for depth.
Equipment
💡 Tips
- Cook the tomato paste in oil for a full 2–3 minutes; it should darken slightly and smell caramelized, not raw.
- Blanch broccoli with the pasta for exactly 3 minutes to keep it bright green and avoid a sulfur taste.
- Use low-sodium chicken broth so the Parmesan doesn’t push the dish into overly salty territory.
⚠️ Common Mistakes
❌ Adding tomato paste directly to broth without frying it first.
✅ Fix: Cook the paste in oil for 2–3 minutes until it darkens slightly, then add broth and whisk smooth.
❌ Overcooking broccoli until dull green and mushy.
✅ Fix: Blanch for 3 minutes only, then finish briefly in the sauce so it stays bright and tender-crisp.
❌ Sauce turning dry and clumpy after adding pasta.
✅ Fix: Loosen with reserved pasta water in 30 ml additions and simmer 1–2 minutes to re-emulsify.
🧊 How to Store
Cool leftovers within 1 hour, then refrigerate in an airtight container for up to 3 days. Reheat in a skillet over medium-low with 30–60 ml water or broth, stirring until hot; microwave reheating is fine but can soften the broccoli more.
📅 Make Ahead
Dice the onion, mince the garlic, and cut the broccoli up to 24 hours ahead and refrigerate in sealed containers. You can also cook the sauce 1 day ahead; rewarm it with 60 ml broth before tossing with freshly cooked pasta.
🍽️ Pairs Well With
- Shirazi salad
- torshi
- pickled garlic
- a glass of doogh
- fresh herbs (sabzi khordan).
Regional Variations
- Tehran-style modern: add 1 tsp paprika (2.3 g) and 1 tbsp ketchup (15 g) for a sweeter, brighter red sauce.
- Shiraz-inspired: add 1 tbsp dried mint (3 g) at the end for a herbaceous lift alongside the lemon.
- Protein-forward: add 250 g cooked shredded chicken and increase broth by 60 ml to keep it saucy.
Ingredients
- 11.5 ozShaped pasta (penne or fusilli) (Short shapes hold the sauce best)
- 12 gSalt (For salting the boiling water)
- 12.5 ozFresh broccoli florets (Cut into bite-size florets; include some tender stems)
- 2 tbspOlive oil
- 5.3 ozYellow onion (Finely diced)
- 18 gGarlic (About 6 cloves, finely minced)
- 2⅛ ozTomato paste (Cook it in oil to remove raw taste)
- 1½ cupChicken broth (Low-sodium preferred)
- 2 gBlack pepper (Freshly ground (about 1 tsp))
- 2 gDried oregano (Optional but common in modern Iranian kitchens)
- 15 gUnsalted butter (Adds gloss and rounds the tomato)
- 2⅛ ozParmesan cheese (Finely grated, plus extra for serving if desired)
- 1 tbspLemon juice (Brightens the sauce (about 1 tbsp))
🔄 Substitutions
- Chicken broth→ Vegetable broth
- Parmesan cheese→ Grana Padano
- Fresh broccoli→ Frozen broccoli florets
Instructions
- 1
Bring 3 liters of water to a rolling boil in a large pot and dissolve 12 g salt in it. Add 320 g shaped pasta and cook for 2 minutes less than the package directions so it finishes in the sauce.
- 2
During the last 3 minutes of pasta cooking, add 350 g broccoli florets to the same pot to blanch them. Drain pasta and broccoli together, reserving 120 ml of the starchy pasta water for adjusting the sauce later.
- 3
Heat 30 ml olive oil in a wide skillet over medium heat, then add 150 g diced onion and cook for 6–8 minutes until soft and lightly golden. Stir in 18 g minced garlic and cook for 45 seconds, keeping the heat moderate so the garlic turns fragrant but does not brown.
- 4
Add 60 g tomato paste and cook it in the oil for 2–3 minutes, stirring constantly, until it darkens slightly and smells sweet rather than raw. This step is key for a Persian-style khorak flavor, where the paste is properly "fried" to deepen color and taste.
- 5
Pour in 360 ml chicken broth and whisk to dissolve the tomato paste into a smooth sauce. Add 2 g black pepper and 2 g dried oregano, then simmer for 6–8 minutes until the sauce thickens enough to coat a spoon.
- 6
Add the drained pasta and broccoli to the skillet and toss until everything is evenly coated. If the sauce looks tight, add reserved pasta water 30 ml at a time (up to 120 ml) and simmer for 2 minutes so the pasta absorbs the tomato-broth flavor.
- 7
Turn off the heat and stir in 15 g butter, 60 g grated Parmesan, and 15 ml lemon juice until glossy and cohesive. Rest the dish for 3 minutes before serving so the sauce clings to the pasta and the broccoli stays bright and tender.
🪪 Recipe Passport
Cultural Background
Khorak dishes are everyday Iranian comfort foods served with bread or rice, built around a flavorful sauce. This pasta version reflects contemporary Persian home kitchens, where Italian pantry staples meet the familiar technique of frying tomato paste for depth.
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

Borani Kadu (بورانی کدو) — Saffron-Infused Zucchini and Yogurt Dip
Persian · Appetizers · 40 min

Mixed Vegetable Rice (برنج با مخلوط سبزیجات) — Persian-Style Aromatic Pilaf
Persian · Rice Dishes · 75 min

Katteh Tond (کته تند) — Spicy Caspian-Style One-Pot Chicken Rice
Persian · Rice Dishes · 85 min

Bai Sach Chrouk (បាយសាច់ជ្រូក) — Cambodian Grilled Pork with Rice
Cambodian · Main Courses · 65 min

Hainanese Chicken Rice (Nasi Ayam Hainan) — Malaysian Kopitiam Classic
Malaysian · Main Courses · 110 min

Keshkek (Keşkek) — Creamy Ceremonial Wheat and Lamb Stew
Turkish · Stews · 240 min

Chicken Chygyrtma (Toyuq Çığırtması) — Azerbaijani Chicken with Eggs and Tomatoes
Azerbaijani · Main Courses · 65 min

Coxinha (Coxinha) — Brazilian Chicken Croquettes
Brazilian · Appetizers · 130 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.