
Seafood Risotto with Chermoula
Creamy saffron-scented risotto with tender mussels and chunks of white fish, marinated and finished with a bright Moroccan chermoula of cilantro, parsley, garlic, cumin, paprika and lemon.
- Prep
- 30 min
- Cook
- 38 min
- Wait
- 22 min
- Total
- 1 hr 30 min
- Makes
- 4 generous main-course servings (about 6 cups / 1.4 L total)
Steps
Before you start
- Buy mussels the day you cook them and keep them in the fridge in a bowl covered with a damp towel (not sealed in a bag or submerged in water).
- Risotto needs steady attention for about 20 minutes, so have every ingredient measured, chopped and within reach before you light the stove.
- The fish marinates for 20 minutes, so make the chermoula first and use that time to prep everything else.
- Use a low-sodium or unsalted fish stock if you can; the reduced stock and mussel liquor both add salt, so season only at the end.
Make the chermoula
- Combine the cilantro, parsley, garlic_chermoula cloves, cumin, paprika, cayenne, preserved lemon rind, lemon juice and salt in a food processor.
- Pulse 8–10 times, scraping down the sides once, until finely chopped but still slightly textured.
- With the motor running, drizzle in the 6 tbsp (90 ml) olive oil.
- (Or finely chop everything by hand and stir in the oil in a bowl.) You should have about 1 cup (240 ml) of loose green sauce.
- Divide it into three portions of about 3 tbsp each: one for the fish, one for stirring into the risotto, one for serving.
+ Show details− Hide details
Ready when: Herbs are finely chopped, glossy with oil, and the sauce spoons easily.
Tip: Don't purée to a smooth paste; a little texture gives chermoula its character.
Marinate the fish
- Place the fish chunks in a medium bowl and add one 3-tbsp portion of the chermoula.
- Toss gently with a spatula until every piece is coated.
- Cover and refrigerate for 20 minutes while you prep everything else.
+ Show details− Hide details
Ready when: Fish pieces are evenly coated with green sauce.
Tip: Don't marinate much longer than 30 minutes; the lemon juice will start to firm up and turn the fish chalky.
Prep mussels and aromatics
- Rinse the mussels under cold water.
- Pull off any fibrous beards and scrub off barnacles.
- Tap any open mussels on the counter; discard any that do not close within a minute.
- Dice the onion and mince the garlic_risotto.
- Crumble the saffron into a small bowl.
+ Show details− Hide details
Ready when: Mussels are clean, beards removed, and tightly closed.
Tip: Discard any mussel with a cracked shell or a strong off smell.
Steam the mussels
- Pour ½ cup (120 ml) of the white wine into the large pot and bring to a boil over high heat.
- Add the mussels, cover, and cook 4–5 minutes, shaking the pot once halfway, until most shells have opened wide.
- Use tongs to transfer the opened mussels to a bowl; if any remain closed, cook 1 minute more, then discard any that still won't open.
- Pour the cooking liquid through a fine-mesh sieve into the stock saucepan, leaving behind any grit in the bottom of the pot.
- Remove all but 8 mussels from their shells (keep the 8 in shell for garnish) and cover the mussels loosely with foil.
+ Show details− Hide details
Ready when: Shells are wide open and the meat looks plump and opaque orange or cream.
Tip: Don't overcook mussels or they turn rubbery; pull them as soon as they open.
Warm the stock
- Add the fish stock and saffron to the saucepan with the strained mussel liquid.
- Bring to a bare simmer over medium-low heat, then reduce to low and keep it hot, with just a few bubbles, for the whole risotto cook.
+ Show details− Hide details
Ready when: Stock is steaming hot and golden-yellow.
Tip: Cold stock slows the rice and makes the texture uneven, so always add it hot.
Soften the onion
- Heat the 2 tbsp olive oil in the 12-inch sauté pan over medium heat.
- Add the onion and a pinch of salt and cook, stirring often, 5 minutes until soft and translucent but not browned.
- Add the garlic_risotto and stir for 30 seconds until fragrant.
+ Show details− Hide details
Ready when: Onion is translucent and soft, with no browning; garlic smells fragrant.
Tip: If the onion starts to brown, lower the heat; browned onion changes the delicate flavor.
Toast rice and add wine
- Add the arborio rice to the pan and stir for 2 minutes over medium heat so every grain is coated in oil and the edges turn translucent while the centers stay white.
- Pour in the remaining ½ cup (120 ml) wine and stir until it is almost fully absorbed, about 1 minute.
+ Show details− Hide details
Ready when: Grain edges look translucent with a white dot in the center, and the pan smells of wine with no sharp alcohol.
Add stock gradually
- Ladle in about ¾ cup (180 ml) of hot stock, or enough to just cover the rice.
- Cook over medium heat, stirring frequently, so the liquid bubbles gently.
- When the pan looks almost dry and a spoon dragged across the bottom leaves a clear trail, add another ladleful.
- Continue for 18–20 minutes, using most of the stock.
- Reduce the heat to medium-low if it is bubbling hard.
- Stop when the rice is tender with a slight bite in the center, and the risotto is creamy and loose enough to slowly spread when you tilt the pan.
- Keep about ½ cup (120 ml) stock in reserve for loosening.
+ Show details− Hide details
Ready when: Grains are tender outside with a slight firm bite (al dente) in the center, and the risotto flows slowly like thick porridge.
Tip: Taste a grain at 16 minutes. If it's still chalky in the center, keep adding stock a ladleful at a time.
Cook the fish
- Reduce the heat to low.
- Stir in the marinated fish, along with the second 3-tbsp portion of chermoula, and add a splash of reserve stock if the risotto looks tight.
- Cover and cook 4–5 minutes, folding gently once at the 2-minute mark, until the fish is opaque and flakes easily.
- An instant-read thermometer in the thickest chunk should read 145°F (63°C).
- Scatter in the shelled mussels for the final minute just to warm through.
+ Show details− Hide details
Ready when: Fish is opaque white, flakes with a fork, and reads 145°F (63°C).
Tip: Fold gently; stirring hard breaks the fish into mush.
Finish and rest
- Remove the pan from the heat.
- Add the cold butter cubes and gently fold until melted and glossy.
- Taste and add salt if needed.
- Cover and rest for 2 minutes so the risotto relaxes into a creamy, flowing texture.
- Add a splash of reserve stock if it has thickened.
+ Show details− Hide details
Ready when: Risotto is glossy and loose, falling in a soft wave from the spoon.
Tip: Risotto thickens fast as it sits, so serve right away.
Serve
- Spoon the risotto into warm shallow bowls.
- Top each with 2 of the in-shell mussels and a spoonful of the remaining chermoula, and serve with lemon wedges on the side.
+ Show details− Hide details
Tip: Warm the bowls in hot water first so the risotto stays loose longer.
Good to know
Tips
- Use a wide pan, which cooks the rice evenly and lets the liquid evaporate steadily.
- Keep the stock hot and add it in small additions; the constant stirring and gradual liquid release the starch that makes the risotto creamy.
- Save a few spoonfuls of chermoula to add at the table; its fresh herbs and acidity cut through the rich rice.
- Cut the fish into evenly sized chunks so they all cook at the same pace.
Make ahead
"The chermoula keeps in a jar in the fridge, with a thin layer of oil on top, for up to 4 days; bring to room temperature before using. Mussels can be steamed and shelled up to 4 hours ahead and refrigerated. The risotto itself should be made just before serving."
Storage & reheating
"Room temperature: no more than 1 hour. Fridge: cool quickly and store airtight up to 1 day. Freezer: not recommended, as the rice and seafood turn mushy. Reheat gently in a pan over low heat with a splash of stock or water, stirring, until just hot (165°F / 74°C); do not microwave on high."
Substitutions
- preserved lemon rind → 1 tsp finely grated fresh lemon zest plus an extra pinch of salt. Less salty and funky, but still bright.
- live mussels in shell → 12 oz (340 g) peeled large shrimp or clams. Cook shrimp with the fish for 3–4 minutes until pink; steam clams like the mussels until they open.
- dry white wine → Additional fish stock plus 1 tbsp lemon juice. Use ½ cup (120 ml) per ½ cup wine to keep the acidity.
- low-sodium fish or seafood stock → Light chicken stock or vegetable stock. Flavor is milder; the mussel liquor helps keep the seafood taste.