Skip to content
Zaffaron

Khorak Macaroni ba Mahi (خوراک ماکارونی با ماهی) — Persian Smoked Fish Pasta Salad

Iranian-inspired pasta salad with smoky trout or salmon, tender peas, eggs, tomatoes, and herbs. A bright orange-tarragon dressing lifts the richness, served at room temperature for a balanced, elegant meal.

By Zaffaron Kitchen· Published March 17, 2026 Verified Recipe
Dairy-Free Nut-Free Halal
Contains: eggs, gluten, fish
50 min total Prep 35m · Cook 15m 4 servings 610 cal ~$5.25/serving
↓ Jump to Recipe
Khorak Macaroni ba Mahi — Persian Smoked Fish Pasta Salad - authentic persian recipe

Printable Recipe Card

Servings: 4 · Total: 50 min · Difficulty: easy

Ingredients (quick list)

  • 320 g Dried shaped pasta (fusilli or farfalle) (choose a shape that holds dressing well)
  • 12 g Fine sea salt (for salting pasta water; adjust later based on fish saltiness)
  • 150 g Frozen green peas (no need to thaw)
  • 200 g Smoked trout or smoked salmon (skin removed; flake into bite-size pieces)
  • 3 Large eggs (hard-boiled, peeled, and chopped)
  • 250 g Ripe tomatoes (seeded and diced (about 2 medium))
  • 60 g Shallots (finely minced (about 2 small))
  • 12 g Fresh chives (finely sliced)
  • 8 g Fresh tarragon leaves (chopped; reserve a little for garnish)
  • 90 ml Extra virgin olive oil (plus more if needed for loosening)
  • 2 tsp Orange zest (finely grated; from 1 large orange)
  • 80 ml Fresh orange juice (from 1 large orange, strained)

+ 3 more in the full ingredients section below.

Steps (summary)

  1. Hard-boil the eggs: place eggs in a saucepan, cover with cold water by 2.5 cm, and bring to a full boil over high heat. Cover,…
  2. Cook the pasta: bring 3 liters of water to a rolling boil and stir in the salt. Add pasta and cook until al dente, usually 9–11…
  3. Drain and cool correctly: drain pasta and peas in a colander, then rinse under cool running water for 10–15 seconds to stop coo…
  4. Make the orange-tarragon dressing: in a bowl, whisk olive oil, orange juice, orange zest, Dijon mustard, honey, and black peppe…
  5. Assemble gently: in a large bowl, combine cooled pasta and peas with tomatoes, shallots, chives, and chopped tarragon. Pour in…
  6. Finish with fish and eggs: add flaked smoked trout or salmon and chopped eggs. Toss very gently for 15–20 seconds to keep the f…

Cultural Background

Pasta salads and macaroni-based dishes are widely enjoyed in contemporary Iranian home cooking, often adapted with local herbs and bright citrus flavors. This smoked-fish version reflects modern, cosmopolitan influences while keeping familiar Persian preferences for fresh herbs and balanced acidity.

smokycitrusysavorylightly sweetherbalal denteflakycreamy egg piecesjuicy tomatoestender peasorange zestfresh tarragonsmoked fisholive oil🌶 low

Equipment

Large pot (at least 5 liters)ColanderSheet pan or large trayMixing bowls (medium and large)WhiskChef's knife and cutting boardCitrus zester or microplaneCitrus juicerMeasuring cups and spoonsKitchen scale

💡 Tips

  • Seed the tomatoes to keep the salad from becoming watery, especially if serving at room temperature.
  • If the fish is intensely smoky or salty, use slightly more orange juice (up to 95 ml) and reduce added salt elsewhere.
  • For the best texture, cool pasta briefly on a tray so it dries a little before dressing.
  • Chop tarragon just before mixing to preserve its anise-like aroma.
  • If serving outdoors, keep the salad chilled and bring to room temperature for 15 minutes before serving.

⚠️ Common Mistakes

  • ❌ Overcooking the pasta until soft

    💡 Why: Soft pasta turns mushy after absorbing dressing and sitting at room temperature.

    ✅ Fix: Cook 1 minute less than the package suggests and taste for a firm, al dente center; cool promptly after draining.

  • ❌ Adding smoked fish too early and stirring aggressively

    💡 Why: The fish breaks down into paste-like bits and can dominate the texture.

    ✅ Fix: Mix vegetables and dressing first, then fold in fish at the end with gentle turns using a wide spoon.

  • ❌ Making the salad watery

    💡 Why: Unseeded tomatoes and poorly drained pasta release water, diluting the dressing.

    ✅ Fix: Seed tomatoes, drain thoroughly, and dry pasta briefly on a tray before combining; add dressing gradually.

  • ❌ Over-salting

    💡 Why: Smoked fish can be quite salty, and salted pasta water adds more.

    ✅ Fix: Taste the fish first, keep dressing unsalted initially, and adjust only at the end after everything is mixed.

🧊 How to Store

Refrigerate in an airtight container for up to 2 days. Stir before serving and refresh with 1–2 tsp olive oil or a squeeze of orange juice if it looks dry. Do not leave at room temperature longer than 2 hours (1 hour if above 32°C).

📅 Make Ahead

Cook eggs and prepare the dressing up to 24 hours ahead; refrigerate separately. Cook pasta and assemble up to 6 hours ahead, refrigerate, then bring to room temperature for 15–20 minutes and fold in fish just before serving for best texture.

🍽️ Pairs Well With

  • Crisp cucumber and radish salad with lemon and olive oil
  • Flatbread or toasted sourdough
  • Pickled vegetables
  • Sparkling water with orange slice

Regional Variations

  • Tehran-style modern salad plattersOften includes extra herbs (more chives and parsley) and may add crisp cucumber cubes for freshness, served as part of a mixed salad spread.
  • Caspian Sea-inspiredLeans toward smoked or cured fish and brighter acidity; some cooks add a little more citrus zest and include more peas or other green vegetables for color.
Nowruz gatherings Picnics Lunch meal prep Summer dinners Potlucks
#room-temperature#pasta-salad#seafood#make-ahead#citrusy#herb-forward

Ingredients

  • 320 gDried shaped pasta (fusilli or farfalle) (choose a shape that holds dressing well)
  • 12 gFine sea salt (for salting pasta water; adjust later based on fish saltiness)
  • 150 gFrozen green peas (no need to thaw)
  • 200 gSmoked trout or smoked salmon (skin removed; flake into bite-size pieces)
  • 3Large eggs (hard-boiled, peeled, and chopped)
  • 250 gRipe tomatoes (seeded and diced (about 2 medium))
  • 60 gShallots (finely minced (about 2 small))
  • 12 gFresh chives (finely sliced)
  • 8 gFresh tarragon leaves (chopped; reserve a little for garnish)
  • 90 mlExtra virgin olive oil (plus more if needed for loosening)
  • 2 tspOrange zest (finely grated; from 1 large orange)
  • 80 mlFresh orange juice (from 1 large orange, strained)
  • 2 tspDijon mustard (helps emulsify and adds gentle heat)
  • 2 tspHoney (balances citrus and smoke)
  • 0.75 tspGround black pepper (freshly ground)

🔄 Substitutions

  • Smoked trout or smoked salmon→ Hot-smoked mackerel
  • Fresh tarragon→ Fresh dill
  • Shallots→ Red onion

Instructions

  1. 1

    Hard-boil the eggs: place eggs in a saucepan, cover with cold water by 2.5 cm, and bring to a full boil over high heat. Cover, turn off heat, and rest 10 minutes. Transfer to ice water for 5 minutes, then peel and chop into 1.5 cm pieces.

  2. 2

    Cook the pasta: bring 3 liters of water to a rolling boil and stir in the salt. Add pasta and cook until al dente, usually 9–11 minutes (check package). During the last 90 seconds, add frozen peas to the pot so they cook but stay bright.

  3. 3

    Drain and cool correctly: drain pasta and peas in a colander, then rinse under cool running water for 10–15 seconds to stop cooking. Shake well to remove excess water. Spread on a tray for 5 minutes so steam escapes; this prevents a watery salad.

  4. 4

    Make the orange-tarragon dressing: in a bowl, whisk olive oil, orange juice, orange zest, Dijon mustard, honey, and black pepper for 30–45 seconds until glossy and slightly thickened. Taste; if your smoked fish is very salty, avoid adding extra salt to the dressing.

  5. 5

    Assemble gently: in a large bowl, combine cooled pasta and peas with tomatoes, shallots, chives, and chopped tarragon. Pour in about three-quarters of the dressing and toss for 30 seconds. Let stand 10 minutes at room temperature so the pasta absorbs flavor.

  6. 6

    Finish with fish and eggs: add flaked smoked trout or salmon and chopped eggs. Toss very gently for 15–20 seconds to keep the fish in tender pieces. Add remaining dressing as needed for sheen. Rest 10 minutes, then serve at room temperature (18–22°C).

🪪 Recipe Passport

Origin: Persian Cuisine
Researched by: Zaffaron Kitchen
Published: March 17, 2026

Cultural Background

Pasta salads and macaroni-based dishes are widely enjoyed in contemporary Iranian home cooking, often adapted with local herbs and bright citrus flavors. This smoked-fish version reflects modern, cosmopolitan influences while keeping familiar Persian preferences for fresh herbs and balanced acidity.

Regional Variations

Tehran-style modern salad platters: Often includes extra herbs (more chives and parsley) and may add crisp cucumber cubes for freshness, served as part of a mixed salad spread.
Caspian Sea-inspired: Leans toward smoked or cured fish and brighter acidity; some cooks add a little more citrus zest and include more peas or other green vegetables for color.

Researched from multiple sources and validated by the Zaffaron editorial team. Every recipe is tested for accuracy, measurements, and cultural authenticity.

Share:

Nutrition per serving

610
Calories
28g
Protein
28g
Fat
62g
Carbs
6g
Fiber
820mg
Sodium

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

Reviews

—
Rated 0.0 out of 5 stars
0 reviews

Cooked this recipe?

Tap the stars to rate it — that's all it takes. A few words are welcome but optional.

Please sign in to rate this recipe.
Rated 0.0 out of 5 stars

No ratings yet. Cooked this one? Be the first to rate it — it takes one tap.