Quick Recipe Version (TL;DR)
Quick Ingredients
- 5 cups low-sodium seafood stock, or 4 cups seafood stock plus 1 cup bottled clam juice
- 1/4 teaspoon saffron threads, lightly crushed
- 1 pound fresh mussels, scrubbed and debearded
- 1 pound large shrimp, peeled and deveined
- 2 tablespoons extra-virgin olive oil
- 2 tablespoons unsalted butter, divided
- 1/2 cup finely chopped shallot or yellow onion
- 4 garlic cloves, minced
- 1 tablespoon tomato paste
- 1 1/2 cups Arborio or Carnaroli rice
- 3/4 cup dry white wine, divided
- 1 cup halved cherry tomatoes
- 1/3 cup chopped fresh parsley
- 1 teaspoon lemon zest plus 1 tablespoon fresh lemon juice
- Kosher salt, black pepper, and optional red pepper flakes
Do This
- 1. Warm the seafood stock with saffron and keep it hot at a gentle simmer, about 180 to 190 degrees F.
- 2. Scrub the mussels, discard any that are cracked or will not close, then season the shrimp with salt and pepper.
- 3. Steam the mussels with 1/4 cup wine and 1/2 cup saffron stock for 3 to 5 minutes; strain the cooking liquid back into the stock.
- 4. Sauté shallot in olive oil and butter, add garlic, tomato paste, rice, and the remaining 1/2 cup wine.
- 5. Add hot stock in 3/4-cup additions, stirring often, until the rice is creamy and al dente, 18 to 22 minutes total.
- 6. Stir in tomatoes, shrimp, mussels, butter, parsley, lemon zest, and lemon juice; rest 2 minutes and serve immediately.
Why You’ll Love This Recipe
- Luxurious but doable: Saffron, wine, shrimp, and mussels make it feel special, while the technique stays very manageable for a home kitchen.
- Rich and creamy without heavy cream: The starch from Arborio or Carnaroli rice creates that classic velvety risotto texture.
- Bright Mediterranean flavor: Garlic, tomatoes, parsley, lemon, olive oil, and seafood bring a sunny coastal feel to every spoonful.
- Perfect for a festive dinner: It looks impressive in shallow bowls, especially with mussels in their shells and saffron-gold rice.
Grocery List
- Produce: Shallot or yellow onion, garlic, cherry tomatoes, fresh parsley, lemon
- Seafood: Fresh mussels, large shrimp
- Dairy: Unsalted butter
- Pantry: Arborio or Carnaroli rice, low-sodium seafood stock or bottled clam juice, saffron threads, extra-virgin olive oil, tomato paste, kosher salt, black pepper, optional red pepper flakes
- Wine: Dry white wine such as Pinot Grigio, Sauvignon Blanc, Albariño, or unoaked Chardonnay
Full Ingredients
For the Saffron Stock
- 5 cups low-sodium seafood stock, or 4 cups low-sodium seafood stock plus 1 cup bottled clam juice
- 1/4 teaspoon saffron threads, lightly crushed between your fingers
For the Seafood
- 1 pound fresh mussels, scrubbed and debearded
- 1 pound large shrimp, peeled and deveined, tails on or off
- 1/4 teaspoon kosher salt, for seasoning the shrimp
- 1/8 teaspoon freshly ground black pepper, for seasoning the shrimp
For the Risotto
- 2 tablespoons extra-virgin olive oil
- 2 tablespoons unsalted butter, divided
- 1/2 cup finely chopped shallot or yellow onion
- 4 garlic cloves, minced
- 1 tablespoon tomato paste
- 1/4 teaspoon crushed red pepper flakes, optional
- 1 1/2 cups Arborio or Carnaroli rice, not rinsed
- 3/4 cup dry white wine, divided into 1/4 cup for the mussels and 1/2 cup for the risotto
- 1 cup cherry tomatoes, halved, about 6 ounces
- 1/2 teaspoon kosher salt, for the risotto
- 1/4 teaspoon freshly ground black pepper
- 1 teaspoon finely grated lemon zest
- 1 tablespoon fresh lemon juice
- 1/3 cup chopped fresh parsley, plus 1 tablespoon more for serving
- Lemon wedges, for serving

Step-by-Step Instructions
Step 1: Bloom the saffron in hot stock
Pour the seafood stock into a medium saucepan and add the lightly crushed saffron threads. Warm over medium heat until the stock is steaming and gently simmering, about 180 to 190 degrees F. Reduce the heat to low and keep the stock hot while you cook. Hot stock helps the rice release starch evenly, which is what gives risotto its creamy texture.
Step 2: Prepare the mussels and shrimp
Rinse the mussels under cold running water, scrubbing the shells with a brush or clean towel. Pull away any beards, which look like little fibers sticking out from the shells. Discard any mussels with cracked shells. If a mussel is open, tap it firmly on the counter; if it does not close within about 30 seconds, discard it.
Pat the shrimp dry with paper towels. Season the shrimp with 1/4 teaspoon kosher salt and 1/8 teaspoon black pepper, then set them aside in the refrigerator while you start the risotto.
Step 3: Steam the mussels and save the flavorful liquid
In a large saucepan or Dutch oven, combine 1/4 cup of the white wine with 1/2 cup of the hot saffron stock. Bring to a boil over medium-high heat. Add the mussels, cover the pot, and cook for 3 to 5 minutes, shaking the pot once or twice, until the mussels open.
Transfer the opened mussels to a bowl. Discard any mussels that remain closed after cooking. Strain the mussel cooking liquid through a fine-mesh sieve into the saucepan of saffron stock; this adds wonderful briny flavor to the risotto. For easier eating, you may remove about half of the mussels from their shells and leave the rest in shells for a beautiful presentation.
Step 4: Build the aromatic risotto base
Set a wide, heavy 12-inch sauté pan or Dutch oven over medium heat. Add the olive oil and 1 tablespoon of the butter. When the butter melts, add the chopped shallot and cook for 3 to 4 minutes, stirring often, until softened but not browned.
Add the minced garlic, tomato paste, and optional red pepper flakes. Cook for 30 seconds, stirring constantly, until fragrant. Add the rice and stir for 2 minutes, coating every grain in the oil and butter. The edges of the grains should look slightly translucent while the centers remain pale.
Step 5: Deglaze with wine
Pour in the remaining 1/2 cup white wine. Stir constantly, scraping up any flavorful bits from the bottom of the pan. Cook for 1 to 2 minutes, until the wine is mostly absorbed and the pan smells bright and aromatic rather than sharply alcoholic.
Step 6: Cook the rice slowly with hot saffron stock
Add 3/4 cup of the hot saffron stock to the rice and stir well. Keep the risotto at a gentle bubble, adjusting the heat between medium-low and medium as needed. Stir frequently, but you do not need to stir nonstop. When the liquid is mostly absorbed and a spoon drawn through the rice leaves a brief trail, add another 3/4 cup of hot stock.
Continue adding stock in 3/4-cup portions, stirring often, for 18 to 22 minutes total. After about 12 minutes of cooking, stir in the halved cherry tomatoes, 1/2 teaspoon kosher salt, and 1/4 teaspoon black pepper. The tomatoes should soften and release their juices while still keeping some shape.
Step 7: Add the shrimp at the end
When the rice is creamy but still slightly firm in the center, stir in the shrimp. If the risotto looks thick, add another 1/2 cup hot stock. Cook for 3 to 4 minutes, stirring gently, until the shrimp are pink, opaque, and cooked to an internal temperature of 145 degrees F. Be careful not to overcook them; shrimp become firm quickly.
Step 8: Finish with mussels, butter, lemon, and parsley
Gently fold in the cooked mussels, the remaining 1 tablespoon butter, lemon zest, lemon juice, and 1/3 cup chopped parsley. Remove the pan from the heat, cover, and let the risotto rest for 2 minutes. The final texture should be creamy and loose enough to slowly spread in the bowl. If it looks stiff, stir in 2 to 4 tablespoons of hot stock or hot water.
Taste and adjust only if needed. Because mussels, stock, and clam juice can all vary in saltiness, it is best to season lightly earlier and fine-tune at the end.
Step 9: Serve immediately
Spoon the risotto into warm shallow bowls. Arrange the mussels in their shells on top, scatter with the remaining 1 tablespoon chopped parsley, and serve with lemon wedges. Risotto is at its best right away, while the rice is glossy, creamy, and gently flowing.
Pro Tips
- Keep the stock hot: Adding cold stock slows cooking and can make the rice cook unevenly. Aim for stock that stays around 180 to 190 degrees F.
- Do not rinse the rice: The surface starch on Arborio or Carnaroli rice is essential for creamy risotto.
- Stir often, not constantly: Frequent stirring releases starch, but constant stirring can break the grains. A relaxed rhythm works beautifully.
- Use a wide pan: A wide sauté pan gives the rice room to cook evenly and helps the liquid reduce at the right pace.
- Aim for a loose finish: Classic risotto should be creamy and gently wavy, not thick like a rice casserole. Loosen with a splash of hot stock just before serving if needed.
Variations
- Scallop and shrimp risotto: Replace the mussels with 8 large sea scallops. Sear the scallops separately for 1 1/2 to 2 minutes per side, then place them on top just before serving.
- Spicy coastal risotto: Increase the red pepper flakes to 1/2 teaspoon and finish with 1 teaspoon Calabrian chile paste for gentle heat and a Southern Italian feel.
- Tomato-forward version: Add 1/2 cup finely chopped canned San Marzano tomatoes with the cherry tomatoes for a deeper red-orange color and a more pronounced tomato flavor.
Storage & Make-Ahead
This risotto is best served immediately, but leftovers can be stored in an airtight container in the refrigerator for up to 2 days. Refrigerate within 2 hours of cooking. To reheat, place 1 serving in a small saucepan with 1/4 cup seafood stock, chicken stock, or water. Warm gently over low heat, stirring often, until the rice is creamy again and the seafood reaches 165 degrees F. Avoid boiling, which can make the shrimp and mussels tough.
For make-ahead prep, chop the shallot, mince the garlic, halve the tomatoes, and chop the parsley up to 1 day in advance. Store each separately in covered containers in the refrigerator. The mussels can be scrubbed up to 4 hours ahead; keep them in a colander set over a bowl, covered with a damp towel in the refrigerator. Do not store live mussels submerged in water and do not seal them in an airtight container. Risotto itself should not be fully cooked ahead, as it loses its creamy texture.
Nutrition (per serving)
Calories: 585 kcal | Carbs: 66g | Protein: 36g | Fat: 18g | Saturated Fat: 6g | Fiber: 3g | Sugar: 5g | Sodium: 910mg | Cholesterol: 225mg
