Easy Brazilian Fish Stew Recipe
Some fish stews taste fine but forgettable. A good Brazilian fish stew recipe — moqueca, as it's known in Brazil — does the opposite: it smells like the coast, tastes rich without feeling heavy, and still comes across bright and clean by the last spoonful. The difference isn't fancy technique. It's a handful of small choices that protect the fish, build real flavor into the base, and finish with lime at exactly the right moment.

Ingredients
Instructions
Marinate the fish briefly. Pat the fish dry, cut into 2-inch pieces, and toss with salt, lime zest, and a tablespoon of lime juice. Set aside while you build the base.
Sear the fish first. Heat a tablespoon of oil in your pan over high heat. Sear the fish pieces briefly on each side until lightly golden but not cooked through, then remove and set aside. This step builds flavor into the pan that a straight simmer skips entirely.
Build the aromatic base. In the same pan, add the onion and a pinch of salt, and sauté 2–3 minutes until glossy, scraping up any browned bits left from searing the fish.
Soften the vegetables. Add the carrot, bell pepper, garlic, and jalapeño if using. Cook 4–5 minutes, until softened and fragrant.
Bloom the spices. Stir in the tomato paste, paprika, and cumin, and cook for about a minute. Add the stock and bring to a simmer, scraping up any remaining browned bits.
Add the tomatoes. Stir in the diced tomatoes, cover, and simmer on medium-low for about 5 minutes, until the carrots are tender.
Add the coconut milk. Stir in the coconut milk and taste for salt. Keep the heat at a gentle simmer — small bubbles only — to keep the coconut milk from separating.
Return the fish to the pot. Nestle the seared fish pieces into the stew in a single layer, spooning broth over the top. Simmer gently for 3–5 minutes (slightly less than if the fish had gone in raw, since it's already partly cooked), until it flakes easily with a fork.
Rest before serving. Turn off the heat and let the stew sit for 5–10 minutes. This lets the sauce settle and the fish finish gently, without any risk of overcooking.
Finish with lime. Squeeze fresh lime juice over the top after the heat is off, not before — cooked lime juice can taste flat or slightly bitter compared to a fresh squeeze at the end.
