If you have ever dreamed of diving into a bowl of rich, flavorful, and refreshing seafood stew, this Brazilian Fish Stew (Moqueca Baiana) Recipe is your golden ticket. It brings together the perfect harmony of fresh fish gently cooked in a delicate coconut milk broth that boasts layers of brightness from lime juice and a vibrant blend of spices. Despite its seemingly simple ingredient list, this dish delivers remarkable depth, making it a standout in Brazilian cuisine and an absolute joy to savor on any day of the week.
Ingredients You’ll Need
The magic behind this stew comes from carefully chosen ingredients that build the stew’s complex flavor without overwhelming the palate. Each element adds something unique: from creamy coconut milk and tangy lime juice to the mild heat from paprika and cayenne pepper, and the fresh crunch from bell peppers. These ingredients work together to create an unforgettable sensory experience.
- Firm white fish fillet (1 lb / 500g): Choose a fresh, skinless, 1-inch cubed fish like cod or snapper for the best texture.
- Lime juice (2 tbsp total): Adds a bright, citrusy zing that lifts the stew beautifully.
- Salt and black pepper: Essential for seasoning and balancing all flavors.
- Olive oil (2 1/2 tbsp): Used for marinating and gently cooking the fish and vegetables, enhancing natural flavors.
- Garlic cloves (2, minced): Brings a subtle pungency and warmth to the broth.
- Small onion (1, finely diced): Provides a sweet base that mellows the broth as it cooks.
- Red capsicum / bell pepper (1 large, sliced): Adds beautiful color and a hint of sweetness.
- Sugar (1 1/2 tsp): Balances acidity and rounds out the flavors.
- Cumin powder (1 tbsp): Imparts an earthy warmth that defines Moqueca Baiana’s signature taste.
- Paprika (1 tbsp): Offers a smoky undertone and vivid color.
- Cayenne pepper (1 tsp, optional): For those who like a gentle kick of heat.
- Full-fat coconut milk (14 oz / 400 ml): The creamy backbone of the stew that keeps it luscious but light.
- Canned crushed tomatoes (14 oz / 400 ml): Adds a tangy, rich tomato base to the broth.
- Fish broth or stock (1 cup): Enhances the seafood flavors without overpowering.
- Fresh cilantro/coriander (3 tbsp, chopped): For a fresh, herbaceous finish and garnish.
How to Make Brazilian Fish Stew (Moqueca Baiana) Recipe
Step 1: Marinate the Fish
Begin by combining the firm white fish cubes with fresh lime juice, olive oil, salt, and black pepper in a bowl. Allow it to marinate for about 20 minutes in the refrigerator. This simple step not only seasons the fish but also infuses it with a gentle citrus brightness that enhances its delicate flavor once cooked.
Step 2: Cook the Fish
Heat 1 tablespoon of olive oil in a large skillet over high heat, then add the marinated fish. Cook just until the pieces are lightly golden and cooked through, which should take only a few minutes. This high-heat sear gives the fish a wonderful texture and locks in moisture. Once done, remove the fish and set it aside.
Step 3: Build the Flavors of the Broth
Reduce the heat to medium-high and add 1 1/2 tablespoons of olive or coconut oil to the same skillet—this will preserve those flavor bits left behind by the fish. Sauté the minced garlic and finely diced onion until the onion becomes translucent and fragrant, about a minute and a half. Then, toss in the sliced red bell pepper and cook for an additional two minutes, allowing the peppers to soften just enough to release their sweetness.
Step 4: Add Spices and Liquids
Sprinkle in the sugar, cumin powder, paprika, cayenne pepper (if using), and salt, stirring well to coat the vegetables. Pour in the full-fat coconut milk, crushed tomatoes, and fish broth, then bring the mixture to a gentle simmer. Allow this vibrant broth to cook down over medium heat for 15 to 20 minutes until it thickens slightly and the flavors meld beautifully. Taste and adjust seasoning as needed.
Step 5: Finish the Stew
Return the cooked fish to the simmering broth for just 2 minutes to warm through gently. Stir in extra lime juice at the end to brighten the stew’s overall flavor profile perfectly. This finishing touch ensures each spoonful bursts with a lively, summery note.
How to Serve Brazilian Fish Stew (Moqueca Baiana) Recipe
Garnishes
To truly honor the spirit of this dish, sprinkle chopped fresh cilantro or coriander on top before serving. The fresh herb adds a delicate, vibrant aroma and a flavorful contrast to the creamy broth. Additional lime wedges on the side provide guests the option to add even more citrus zing.
Side Dishes
This stew is traditionally enjoyed with fluffy white rice that soaks up the luscious sauce perfectly. For a fun twist, try making lime rice with a touch of zest and juice, enhancing the refreshing notes of the stew. If you prefer a low-carb option, cauliflower rice is an excellent choice as it complements the flavors while keeping the meal light.
Creative Ways to Present
For an impressive presentation, serve the Brazilian Fish Stew (Moqueca Baiana) Recipe in colorful earthenware bowls that reflect the dish’s Brazilian roots. Garnish with whole sprigs of cilantro and lime wedges arranged artfully around the bowl. Pair with a bright tropical salad or grilled plantains on the side for a truly festive experience.
Make Ahead and Storage
Storing Leftovers
If you’re lucky enough to have leftovers, store the stew in an airtight container in the refrigerator. It will keep well for up to 2 days without losing its fresh flavors, making it ideal for quick lunches or dinners.
Freezing
You can freeze this stew for longer storage, but keep in mind that the texture of the fish might soften after thawing. Freeze the stew without the fish if possible, and add freshly cooked fish when reheating to maintain the best texture and taste.
Reheating
Reheat the stew gently on the stovetop over low to medium heat, stirring occasionally to avoid burning the coconut milk. If frozen, thaw overnight in the refrigerator first. Add a splash of fresh lime juice after reheating to revive the bright flavors.
FAQs
Can I use other types of seafood in this stew?
Absolutely! While this Brazilian Fish Stew (Moqueca Baiana) Recipe traditionally uses firm white fish, you can also add prawns, calamari, or a mix of seafood for a varied texture and richer flavor.
Is coconut milk necessary for this dish?
Coconut milk is a key ingredient that gives the stew its creamy texture and subtle sweetness. Using full-fat coconut milk is best for richness, but light coconut milk can work if you prefer a lighter dish.
How spicy is this stew?
The heat level depends on your choice to include cayenne pepper. It adds a gentle warmth without overpowering the other flavors, so feel free to adjust or omit it based on your spice tolerance.
What if I don’t have fish broth?
If fish broth is unavailable, chicken or vegetable broth makes a fine substitute, still allowing the stew to have depth without detracting from the overall seafood flavor.
Can I prepare this recipe vegan or vegetarian?
While the stew is centered on fish, you can adapt the recipe by substituting firm tofu or hearty vegetables like eggplant and zucchini. Use vegetable broth instead of fish broth and keep the coconut milk base for richness.
Final Thoughts
Every spoonful of this Brazilian Fish Stew (Moqueca Baiana) Recipe sings with a perfect balance of creamy, tangy, and mildly spiced flavors that will transport you straight to the coast of Brazil. It’s an easy yet impressive dish to share with loved ones, and I can’t wait for you to try it and make it your new favorite seafood stew.
Print
Brazilian Fish Stew (Moqueca Baiana) Recipe
Moqueca Baiana is a classic Brazilian fish stew cooked in a fragrant coconut milk broth, enriched with vibrant bell peppers, garlic, and warm spices like cumin and paprika. This dish delivers a perfect balance of richness and freshness with the bright lime juice and fresh cilantro garnish, making it a delicious and wholesome seafood meal ready in under 40 minutes.
- Total Time: 35 minutes
- Yield: 4 servings
Ingredients
Fish
- 1 lb / 500g firm white fish fillet, no skin, cut into 1″/2.5cm cubes
- 1 tbsp lime juice
- 1/4 tsp salt
- Black pepper, to taste
- 1 tbsp olive oil
Broth
- 1 1/2 tbsp olive oil or coconut oil
- 2 garlic cloves, minced
- 1 small onion, finely diced (brown, yellow or white)
- 1 large red capsicum / bell pepper, halved and sliced
- 1 1/2 tsp sugar (any)
- 1 tbsp cumin powder
- 1 tbsp paprika
- 1 tsp cayenne pepper (optional)
- 1/2 tsp salt
- 14 oz / 400ml coconut milk (full fat preferred)
- 14 oz / 400ml canned crushed tomatoes
- 1 cup fish broth/stock (or chicken or vegetable broth)
Finishes
- 1–2 tbsp lime juice, plus more for serving
- 3 tbsp roughly chopped fresh cilantro / coriander, plus more for serving
Instructions
- Marinate the Fish: Combine the fish cubes with 1 tbsp lime juice, 1/4 tsp salt, black pepper, and 1 tbsp olive oil in a bowl. Cover with cling wrap and refrigerate for 20 minutes to allow the flavors to penetrate.
- Cook the Fish: Heat 1 tbsp olive oil in a large skillet over high heat. Add the marinated fish and cook until just cooked through and lightly golden, about 3-4 minutes. Remove from the skillet and set aside.
- Prepare the Broth Base: Reduce the heat to medium-high and add 1 1/2 tbsp olive or coconut oil to the same skillet. Sauté the minced garlic and diced onion for 1 1/2 minutes until the onion starts to become translucent.
- Add Bell Peppers: Add the sliced red capsicum and cook for 2 minutes, stirring occasionally to soften the peppers slightly.
- Add Spice and Liquid Ingredients: Stir in sugar, cumin powder, paprika, cayenne pepper (if using), salt, coconut milk, crushed tomatoes, and broth. Bring the mixture to a simmer and then reduce heat to medium. Let cook for 15 to 20 minutes, stirring occasionally, until the broth thickens and deepens in flavor.
- Return Fish to Broth: Add the cooked fish back into the skillet and gently reheat it in the broth for about 2 minutes to meld the flavors without overcooking the fish.
- Finish the Stew: Stir in 1 to 2 tbsp lime juice for brightness. Adjust seasoning with salt and pepper as needed.
- Garnish and Serve: Sprinkle the chopped fresh cilantro/coriander on top. Serve the stew hot, ideally with steamed rice, lime rice, or for a low-carb option, cauliflower rice.
Notes
- Use firm white fish such as cod, halibut, or snapper for best results.
- Full-fat coconut milk gives a richer, creamier broth but light versions can be used for a lighter stew.
- Fish broth adds depth but chicken or vegetable broth works fine if fish broth is unavailable.
- Olive oil or coconut oil can be used interchangeably as the cooking fat depending on flavor preference.
- Adjust cayenne pepper according to your desired heat level or omit for no spice.
- Marinating the fish briefly enhances flavor and keeps the fish tender during cooking.
- Serve with fresh lime wedges for added citrus zing.
- Prep Time: 10 minutes
- Cook Time: 25 minutes
- Category: Fish, Stew
- Method: Stovetop
- Cuisine: Brazilian
- Diet: Halal