
Brazilian fish stew (moqueca)
Tender white fish layered with peppers, tomatoes and onion and gently simmered in lime and coconut milk, a bright, sunny stew from Brazil’s coast.
- 45 min total
- 25 min hands-on
- Follow-a-recipe easy
- Serves 4
- About $3.99 a serving
- 450 calories
- Gluten-free
- Dairy-free

Dolly says: Read the steps once before you start. Everything goes smoother after that.
Ingredients
For 4 servings.
- 1½ lb frozen white fish fillets, thawed and cut into big chunks
- 2 limes, juiced
- 3 cloves garlic, minced
- 1 yellow onion, thinly sliced
- 1 red bell pepper, thinly sliced
- 1 green bell pepper, thinly sliced
- 3 tomatoes, sliced into rounds
- 1 can coconut milk
- ½ cup cilantro, chopped
From your pantry
- 1 tsp salt
- 2 tbsp olive oil
- 1 tbsp paprika
Each serving has about 450 calories, 31 g protein, 21 g carbs and 29 g fat, and costs about $3.99 at typical US grocery prices. Both are estimates from what the recipe uses.
Missing something?
- No limes? Lemons work.
- No yellow onions? White onions or red onions work.
- No red bell peppers? Yellow bell peppers work.
- No green bell peppers? Yellow bell peppers work.
- No tomatoes? Roma tomatoes work.
- No coconut milk? Light coconut milk works.
- No cilantro? Fresh parsley works.
Steps
Tap an underlined word for a quick explanation.
Cut the thawed fish into big chunks and toss it in a bowl with half the lime juice, the garlic and ½ teaspoon of the salt. Cover and leave it in the fridge for 10 minutes.
Timer: 10 min
Food safety: Wash your hands, the board and the knife with hot soapy water after touching raw meat, and don’t rinse raw chicken in the sink.
While the fish sits, the onion and bell peppers and cut the tomatoes into rounds.
Thinly slice. Thinly slicing means cutting slices about an eighth of an inch thick, roughly two coins stacked. Thin slices cook in seconds and soften fast, which quick dishes need.
How you’ll know: A slice bends a little when you hold it by one edge, and slow, steady cuts beat fast ones.
the oil into a large, wide pot. Layer half the onion, peppers and tomatoes in the bottom, lay the fish on top, and cover with the rest of the vegetables.
Drizzle. Drizzling means pouring a thin, slow stream over the top of something. A thin stream spreads a little flavor a long way.
How you’ll know: You see thin lines across the food, not a puddle collecting underneath.
Dolly’s tip: The layers let the fish steam gently between the vegetables so it doesn’t fall apart.the paprika and remaining salt into the coconut milk and pour it over everything.
Whisk. Whisking means beating quickly with a whisk or a fork to blend things together. It smooths out lumps and mixes eggs, oil or sauces evenly.
How you’ll know: It all looks one even color and texture, with no streaks or lumps.
Cover and over medium heat, then turn it down to low and cook for 15 minutes without stirring, until the fish flakes easily.
Simmer. Simmering means keeping a liquid just below a boil, with small bubbles rising gently. It cooks food evenly and lets a sauce thicken without scorching on the bottom.
How you’ll know: Small, lazy bubbles break the surface every second or so, and nothing is churning.
Low heatTimer: 15 min
Food safety: Fish is done at 145°F, when the middle looks opaque and flakes apart easily with a fork.
Squeeze in the rest of the lime juice, scatter the cilantro over, taste the broth for salt, and spoon into bowls, fish and vegetables together.

Plan this in Dollop, and get the grocery list
Dollop puts this dinner on a night that suits your week, lists only what you still need to buy, and walks you through each step while you cook.
More dinners like this

Mediterranean baked cod with tomatoes and olives
35 min

Parmesan crusted tilapia
25 min

Air fryer cod
20 min

Air fryer salmon
20 min
One-pan dinners ›High-protein dinners ›What to make with bell peppers and tomatoes ›