Go Back
+ servings

Moqueca (Brazilian Fish Stew)

A vibrant Brazilian fish stew simmered in a silky coconut-tomato broth with onions, peppers, lime, and a hint of dendê oil. Tender chunks of firm white fish (plus optional shrimp) gently poach until flaky and sweet, then get finished with fresh cilantro and green onions. Cozy enough for easy weeknight dinners yet special enough for guests—naturally gluten-free and simple to customize.
No ratings yet
Prep Time 25 minutes
Cook Time 25 minutes
Total Time 50 minutes
Course Dinner, Main Course
Cuisine Brazilian, South American
Servings 6 servings
Calories 520 kcal

Ingredients
  

  • 1.5–2 lb firm white fish fillets (cod, snapper, mahi-mahi, sea bass, or halibut), cut in 2-inch pieces, patted dry
  • 1 lb large shrimp, peeled and deveined (optional)
  • 2 medium yellow onions, thinly sliced
  • 2 bell peppers (mixed colors), sliced into thin strips
  • 2 lb ripe tomatoes, diced (or two 14.5-oz cans diced tomatoes with juices)
  • 4 cloves garlic, minced
  • 1 inch fresh ginger, grated (optional but recommended)
  • 1–2 fresh chili peppers (malagueta, serrano, or jalapeño), finely chopped, seeds to taste
  • 2 tablespoons olive oil
  • 2 cans (13.5 oz) full-fat coconut milk, shaken
  • 2 limes, juiced, plus extra wedges for serving
  • 1/4 cup dendê (red palm) oil (optional, for authentic flavor and color)
  • 1 bunch fresh cilantro, chopped (stems and leaves), divided
  • 3–4 green onions (scallions), thinly sliced, for garnish
  • fine sea salt and freshly ground black pepper, to taste

Instructions
 

  • Prep all produce: thinly slice onions and peppers; dice tomatoes (if using fresh); mince garlic; grate ginger; finely chop chili. Cut fish into 2-inch pieces and pat very dry. Lightly season fish (and shrimp, if using) with salt and pepper.
  • Heat olive oil in a wide Dutch oven over medium heat until shimmering. Add onions with a pinch of salt and cook 5–7 minutes, stirring, until soft and translucent.
  • Stir in garlic, ginger (if using), and chili. Cook 30–60 seconds until fragrant, avoiding browning.
  • Add bell peppers and cook about 5 minutes to soften slightly. Stir in tomatoes, season with salt and pepper, and simmer 5–7 minutes until the mixture becomes saucy.
  • Spread the vegetable base into an even layer. Gently nestle fish pieces on top; if using shrimp, scatter them over the fish. Do not stir.
  • Pour in coconut milk around and over the seafood. If using dendê oil, drizzle it over the surface. Bring just to a gentle simmer over medium-low heat (tiny bubbles only).
  • Cover and simmer gently 15–20 minutes, until fish is opaque and flakes easily and shrimp are pink and just firm. Avoid vigorous boiling to prevent the coconut milk from splitting and the fish from breaking.
  • Remove from heat. Stir in fresh lime juice and half of the chopped cilantro. Taste and adjust seasoning with additional salt, pepper, or lime.
  • Ladle into warm bowls and garnish with remaining cilantro and green onions. Serve immediately with lime wedges. Suggested sides: steamed white rice, brown rice, or garlicky sautéed greens.

Nutrition

Serving: 1servingsCalories: 520kcalCarbohydrates: 18gProtein: 38gFat: 34gSaturated Fat: 24gSodium: 640mgFiber: 4gSugar: 8g
Keyword Brazilian Fish Stew, Budget-Friendly Recipes, coconut milk recipes, Easy Weeknight Dinners, Healthy Comfort Food, High Protein Meals, Moqueca, Quick Family Meals, seafood stew
Tried this recipe?Let us know how it was!