Menu

Saffron Fish Biryani With Mint, Fried Onions, and Yogurt Marinade

Quick Recipe Version (TL;DR)

  • Yield: 6 servings
  • Prep Time: 35 minutes (includes 30-minute rice soak)
  • Cook Time: 55 minutes
  • Total Time: 1 hour 30 minutes

Quick Ingredients

  • Basmati rice: 2 cups (400 g), soaked 30 minutes
  • Fish: 1 1/2 lb (680 g) firm white fish, cut into 2-inch pieces
  • Yogurt: 1 1/4 cups plain whole-milk yogurt, divided
  • Onions: 3 large, thinly sliced
  • Ghee/oil: 5 tbsp, divided
  • Ginger-garlic paste: 2 tbsp, divided
  • Spices: turmeric, Kashmiri chili powder, coriander, garam masala, cumin seeds + whole spices for rice
  • Herbs: 3/4 cup cilantro + 1/2 cup mint, chopped
  • Saffron milk: 1/4 tsp saffron + 3 tbsp warm milk
  • Optional: 1 tsp rose water or kewra water

Do This

  • 1. Soak rice 30 minutes; steep saffron in warm milk 10 minutes.
  • 2. Marinate fish in spiced yogurt 20 minutes while you prep onions and herbs.
  • 3. Fry sliced onions in ghee/oil until deep golden; set aside (some for masala, some for layering).
  • 4. Parboil rice with whole spices and salt until 70% cooked (6–7 minutes after it returns to a boil); drain.
  • 5. Make onion-yogurt masala with cumin, ginger-garlic, yogurt, and spices; cook until thick.
  • 6. Pan-sear marinated fish 1–2 minutes per side (just to firm up); gently fold into masala.
  • 7. Layer masala, rice, fried onions, mint/cilantro, and saffron milk; seal and steam (dum) 25 minutes on very low.
  • 8. Rest 10 minutes, then fluff gently and serve.

Why You’ll Love This Recipe

  • Big biryani flavor, approachable method: You get dramatic layers and aroma without needing restaurant equipment.
  • Fish stays tender: A quick pan-sear helps the fish hold together during steaming.
  • Fragrant, showstopping finish: Saffron, fried onions, mint, and cilantro make every spoonful feel special.
  • Great for guests: It’s a one-pot centerpiece that looks impressive when you lift the lid.

Grocery List

  • Produce: 3 large onions, 2 green chiles, 1 lemon, fresh cilantro, fresh mint
  • Dairy: Plain whole-milk yogurt, milk
  • Pantry: Basmati rice, ghee or neutral oil, saffron threads, ginger-garlic paste (or fresh ginger + garlic), salt, Kashmiri chili powder, turmeric, ground coriander, garam masala, cumin seeds, bay leaves, green cardamom pods, cloves, cinnamon stick (and optional star anise), rose water or kewra water (optional)
  • Seafood: 1 1/2 lb (680 g) firm white fish (cod, halibut, sea bass, or tilapia)

Full Ingredients

Fish and Marinade

  • Fish: 1 1/2 lb (680 g) firm white fish fillets, cut into 2-inch (5 cm) pieces
  • Plain yogurt: 3/4 cup (180 g)
  • Ginger-garlic paste: 1 tbsp
  • Lemon juice: 1 tbsp
  • Kashmiri chili powder: 1 1/2 tsp (or 1 tsp paprika + 1/2 tsp cayenne for more heat)
  • Ground coriander: 1 tsp
  • Turmeric: 1/2 tsp
  • Garam masala: 1 tsp
  • Fine salt: 1 1/4 tsp
  • Neutral oil: 1 tbsp (for the pan-sear)

Rice

  • Basmati rice: 2 cups (400 g)
  • Water: 8 cups (1.9 L) for boiling
  • Salt: 1 tbsp (for the rice water)
  • Bay leaves: 2
  • Green cardamom pods: 5
  • Cloves: 4
  • Cinnamon stick: 1 (2-inch / 5 cm)
  • Cumin seeds: 1 tsp
  • Optional: 1 star anise

Onion-Yogurt Masala

  • Ghee (or neutral oil): 4 tbsp, divided
  • Onions: 3 large, thinly sliced (about 5–6 cups / 500–600 g)
  • Cumin seeds: 1 tsp
  • Ginger-garlic paste: 1 tbsp
  • Green chiles: 2, slit lengthwise
  • Plain yogurt: 1/2 cup (120 g)
  • Kashmiri chili powder: 1 tsp
  • Ground coriander: 1 tsp
  • Turmeric: 1/4 tsp
  • Garam masala: 1 tsp
  • Black pepper: 1/2 tsp
  • Water: 1/2 cup (120 ml)
  • Fine salt: 1/2 tsp (plus more to taste)

Layering and Finishing

  • Saffron threads: 1/4 tsp
  • Milk: 3 tbsp, warmed to about 110°F (43°C)
  • Fresh cilantro: 3/4 cup, chopped
  • Fresh mint: 1/2 cup, chopped
  • Rose water or kewra water (optional): 1 tsp
  • Optional garnish: extra fried onions, lemon wedges
Saffron Fish Biryani With Mint, Fried Onions, and Yogurt Marinade – Closeup

Step-by-Step Instructions

Step 1: Soak the rice and bloom the saffron

Rinse 2 cups (400 g) basmati rice in several changes of cool water until the water runs mostly clear. Cover with fresh water and soak for 30 minutes, then drain well.

Meanwhile, warm 3 tbsp milk to about 110°F (43°C) (warm, not hot). Crush 1/4 tsp saffron threads between your fingers, stir into the warm milk, and let it steep for 10 minutes.

Step 2: Marinate the fish

In a bowl, mix: 3/4 cup yogurt, 1 tbsp ginger-garlic paste, 1 tbsp lemon juice, 1 1/2 tsp Kashmiri chili powder, 1 tsp coriander, 1/2 tsp turmeric, 1 tsp garam masala, and 1 1/4 tsp salt.

Add the fish pieces (1 1/2 lb / 680 g) and gently coat. Cover and refrigerate for 20 minutes (or up to 45 minutes for more flavor). Avoid marinating much longer, as the acid and yogurt can start to “cook” delicate fish.

Step 3: Fry the onions until deep golden

In a wide, heavy pot or Dutch oven (at least 5–6 quarts), heat 4 tbsp ghee (or oil) over medium heat. Add the thinly sliced onions and cook, stirring often, for 18–25 minutes, until they turn deep golden brown and sweet.

Transfer about 1 heaping cup of the fried onions to a plate for layering later. Leave the remaining onions in the pot; they’ll form the base of your masala.

Step 4: Parboil the rice (70% cooked)

Bring 8 cups (1.9 L) water to a rolling boil in a large pot. Add 1 tbsp salt plus the whole spices: 2 bay leaves, 5 cardamom pods, 4 cloves, 1 cinnamon stick, 1 tsp cumin seeds, and (optional) 1 star anise.

Add the drained rice. Once the water returns to a steady boil, cook for 6–7 minutes, stirring once or twice, until the rice is about 70% cooked (the grain should break with a firm white center).

Drain immediately in a colander. Do not rinse. Set aside.

Step 5: Build the spiced yogurt-onion masala

Back at the pot with the remaining fried onions, keep the heat at medium. Add 1 tsp cumin seeds and cook for 30 seconds until fragrant.

Add 1 tbsp ginger-garlic paste and 2 slit green chiles. Cook for 45–60 seconds, stirring constantly so the paste doesn’t scorch.

Lower the heat to low. Whisk 1/2 cup yogurt with 1/2 cup water until smooth. Stir it into the pot gradually.

Add 1 tsp Kashmiri chili powder, 1 tsp coriander, 1/4 tsp turmeric, 1 tsp garam masala, 1/2 tsp black pepper, and 1/2 tsp salt. Simmer on low for 5–7 minutes until thickened and glossy, stirring frequently.

Step 6: Pan-sear the fish (quickly) and fold into the masala

Heat 1 tbsp neutral oil in a nonstick or well-seasoned skillet over medium-high heat. Once hot, add the marinated fish pieces in a single layer (work in 2 batches if needed).

Sear for 1–2 minutes per side, just until lightly browned and the exterior firms up. The fish should not be cooked through yet.

Gently slide the fish into the onion-yogurt masala. Fold carefully with a spatula so the pieces stay intact. Cook on low for 2 minutes to coat everything, then turn off the heat.

Step 7: Layer the biryani with herbs, fried onions, and saffron

Keep the fish-masala in an even layer at the bottom of your heavy pot/Dutch oven. Top with half of the parboiled rice, spreading gently.

Sprinkle over half of the reserved fried onions, plus half of the chopped cilantro and mint.

Add the remaining rice. Finish with the rest of the fried onions, cilantro, and mint.

Drizzle the saffron milk evenly over the top. If using, drizzle 1 tsp rose water or kewra water over the rice for a classic biryani aroma.

Step 8: Steam on dum, then rest and serve

Seal the pot: Cover the pot with a tight-fitting lid. For extra insurance against steam escaping, place a sheet of foil under the lid, crimping it around the rim, then put the lid on top.

Stovetop dum method: Set the pot over medium heat for 5 minutes to build steam. Then reduce to very low heat and cook for 20 minutes. (If you have a heat diffuser or a flat griddle/tawa, place it under the pot during the low-heat phase to prevent scorching.)

Oven dum option: Bake covered at 325°F (163°C) for 25 minutes (no need for the initial 5 minutes on the stove).

Turn off the heat and let the biryani rest, covered, for 10 minutes. This finishes the steaming and helps the layers set.

To serve, gently fluff from the sides with a wide spoon, lifting rice and fish together so you keep the layers. Serve hot with lemon wedges and (optional) extra yogurt on the side.

Pro Tips

  • Choose the right fish: Firm fish (cod, halibut, sea bass, tilapia, kingfish) holds up best. Avoid very delicate fish that flakes instantly.
  • Don’t overcook during searing: The fish finishes cooking during dum. A quick 1–2 minutes per side is enough to keep pieces intact.
  • Parboil rice correctly: Aim for 70% cooked (a firm core). If the rice is fully cooked before dum, the final biryani can turn soft or mushy.
  • Fry onions patiently: Deep golden onions deliver sweetness and that signature biryani aroma. Rushing them means less flavor.
  • Keep the masala thick: A watery masala can over-steam the rice. Simmer until creamy and cohesive before layering.

Variations

  • Coconut fish biryani (South Indian-inspired): Replace the 1/2 cup water in the masala with 1/2 cup coconut milk and add 10 curry leaves with the cumin.
  • Spicier version: Add 1/2 tsp cayenne to the fish marinade and add 1 chopped green chile to the masala.
  • Extra-luxe: Add 2 tbsp melted ghee drizzled over the top rice layer right before dum.

Storage & Make-Ahead

Cool leftovers within 2 hours, then refrigerate in an airtight container for up to 3 days. Reheat gently: add 1–2 tbsp water, cover, and warm on the stovetop over low heat for 10–12 minutes, or microwave covered in 60-second bursts until hot throughout.

Make-ahead: You can fry the onions and chop the herbs up to 1 day ahead (refrigerate). You can also parboil and drain the rice up to 6 hours ahead; spread it on a tray to cool, then cover and refrigerate. Assemble and dum-steam just before serving for the best texture.

Freezing: Fish biryani can be frozen for up to 1 month, but the fish texture is best fresh. Thaw overnight in the refrigerator and reheat covered with a splash of water.

Nutrition (per serving)

Approximate, based on 6 servings: 520 calories, 33 g protein, 16 g fat, 62 g carbohydrates, 3 g fiber, 920 mg sodium.

Leave a Reply

Your email address will not be published. Required fields are marked *


Promotional Banner X
*Sponsored Link*