Moroccan Braised Fish in Tomato

Golden Moroccan braised fish fillets nestled in rich red tomato sauce with fresh herbs Save
Golden Moroccan braised fish fillets nestled in rich red tomato sauce with fresh herbs | homecookledger.com

This dish features succulent white fish fillets gently braised in a vibrant tomato sauce infused with classic Moroccan spices like cumin, paprika, and turmeric. The fish absorbs the fragrant flavors while remaining tender and moist, creating a harmonious balance between the mild seafood and the robust, spiced tomato base.

Perfect for family dinners, this one-pan meal comes together in under an hour and pairs beautifully with couscous, rice, or crusty bread to soak up the flavorful sauce.

The first time I made this Moroccan fish, my tiny kitchen filled with such incredible aromas that my neighbor actually knocked on the door to ask what I was cooking. I had discovered preserved lemons at a specialty market earlier that week and could not stop thinking about North African flavors. Now this sauce has become my go to when I want something that feels special but does not require hours of active work.

Last winter my sister came over exhausted from work and I made this recipe. She took one bite and literally closed her eyes, saying it tasted like something we would have eaten at that tiny restaurant in Marrakesh during our travels. We sat at the kitchen table eating straight from the pan and talked for hours.

Ingredients

  • 4 white fish fillets: Cod or halibut hold up well during braising but any mild firm fish will work beautifully here
  • Lemon juice: This helps the fish absorb all those lovely spices and keeps everything tender
  • Ground cumin and paprika: These are the backbone of Moroccan flavor and bloom beautifully in hot oil
  • Crushed tomatoes: Use good quality canned tomatoes since they form the base of your sauce
  • Fresh herbs: Cilantro and parsley added at the end bring brightness that cuts through the rich sauce

Instructions

Prepare the fish:
Toss your fillets with lemon juice, salt, and pepper while you gather everything else. This little head start makes such a difference in the final dish.
Make the spice rub:
Mix olive oil with minced garlic, cumin, paprika, turmeric, and chopped herbs until you have a fragrant paste. Rub this all over both sides of each fish fillet and let them hang out while you start the sauce.
Build your base:
Heat olive oil in a deep skillet and cook your onion until it softens and turns golden. Add diced bell pepper and let it get tender too, then stir in garlic and all those ground spices. The moment they hit the hot pan your kitchen will smell incredible.
Simmer the sauce:
Pour in crushed tomatoes, tomato paste, water, and sugar, then add your bay leaf. Let this bubble gently for about 10 minutes until it starts to thicken and deepen in color. Taste and adjust salt and pepper as needed.
Gently cook the fish:
Nestle those spice rubbed fillets into the sauce and spoon some of that tomato goodness over the top. Cover the pan and let everything simmer on low heat for 12 to 15 minutes until the fish flakes easily with a fork.
Finish with herbs:
Sprinkle fresh cilantro and parsley over everything right before serving. The contrast of bright herbs against the rich spiced sauce is what makes this dish sing.
Flaky white fish simmered gently in spiced tomato sauce topped with green cilantro and parsley Save
Flaky white fish simmered gently in spiced tomato sauce topped with green cilantro and parsley | homecookledger.com

This recipe has become my comfort food request from friends who are feeling under the weather or just need a warm hug in a bowl. Something about the gentle spices and tender fish feels nurturing without being heavy.

Choosing the Right Fish

I learned the hard way that delicate fish like tilapia falls apart completely in this sauce. Stick with firm white fish that can hold its shape during braising. Halibut is my splurge choice but cod works perfectly and is usually more budget friendly.

Serving Suggestions

Steamed couscous is traditional and soaks up that spiced tomato sauce beautifully. Sometimes I serve it over rice or with crusty bread for dipping. A simple green salad with a lemon vinaigrette balances the rich flavors perfectly.

Make It Your Own

Once you have made this a few times you will find your own rhythm with the spices. Some days I add more heat with extra cayenne or harissa paste. Green olives bring a lovely briny contrast while preserved lemon adds authentic Moroccan flair.

  • Double the sauce portion and freeze half for another meal
  • Add chickpeas to make it more substantial
  • Try it with shrimp instead of fish for a quicker version
Steaming skillet of Moroccan braised fish in thick tomato sauce served with crusty bread Save
Steaming skillet of Moroccan braised fish in thick tomato sauce served with crusty bread | homecookledger.com

This recipe reminds me that good food does not need to be complicated. It is just about layering flavors and letting simple ingredients shine together.

Recipe FAQs

White fish fillets like cod, haddock, halibut, or sea bass are ideal because they hold their shape during braising and absorb the spiced tomato sauce beautifully.

Yes, increase the cayenne pepper or add red chili flakes to the sauce. You can also serve with harissa paste on the side for those who prefer extra heat.

Steamed couscous, fluffy rice, or crusty bread are perfect for soaking up the rich tomato sauce. A simple green salad with lemon dressing complements the flavors well.

The fish is ready when it flakes easily with a fork and appears opaque throughout. Avoid overcooking, as the fish will continue to cook slightly in the hot sauce after removing from heat.

Green olives, preserved lemon slices, or chickpeas make excellent additions. For more vegetables, try adding diced carrots or zucchini along with the bell pepper.

Moroccan Braised Fish in Tomato

Tender fish simmered in aromatic tomato sauce with warm Moroccan spices

Prep 20m
Cook 30m
Total 50m
Servings 4
Difficulty Medium

Ingredients

Fish

  • 4 skinless white fish fillets (cod, haddock, or halibut, about 5 oz each)
  • Juice of 1 lemon
  • 1 tsp salt
  • ½ tsp ground black pepper

Marinade

  • 2 tbsp olive oil
  • 2 garlic cloves, finely minced
  • 1 tsp ground cumin
  • 1 tsp sweet paprika
  • ½ tsp ground turmeric
  • 1 tbsp chopped fresh cilantro
  • 1 tbsp chopped fresh parsley

Tomato Sauce

  • 2 tbsp olive oil
  • 1 large onion, finely chopped
  • 1 red bell pepper, diced
  • 3 garlic cloves, minced
  • 1½ tsp ground cumin
  • 1 tsp paprika
  • ½ tsp ground coriander
  • ¼ tsp cayenne pepper
  • 1 can (14 oz) crushed tomatoes
  • 2 tbsp tomato paste
  • ⅔ cup water
  • 1 tsp sugar
  • Salt and pepper, to taste
  • 1 bay leaf
  • 2 tbsp chopped fresh cilantro
  • 2 tbsp chopped fresh parsley

Instructions

1
Prepare the Fish: Place fish fillets in a shallow dish. Drizzle with lemon juice, salt, and pepper. Let marinate for 10 minutes.
2
Make the Spice Rub: In a small bowl, mix olive oil, garlic, cumin, paprika, turmeric, cilantro, and parsley for the marinade. Rub onto both sides of the fish fillets. Set aside.
3
Sauté Aromatics: Heat olive oil in a large, deep skillet or Dutch oven over medium heat. Add onion and sauté for 4–5 minutes until soft.
4
Add Spices and Peppers: Add red bell pepper and cook for 3 minutes. Stir in garlic, cumin, paprika, coriander, and cayenne. Fry for 1 minute until fragrant.
5
Prepare the Sauce Base: Pour in crushed tomatoes, tomato paste, water, sugar, salt, pepper, and bay leaf. Bring to a simmer and cook uncovered for 10 minutes, stirring occasionally, until slightly thickened.
6
Add Fish to Sauce: Gently nestle the marinated fish fillets into the sauce. Spoon some sauce over the top.
7
Simmer Until Cooked: Cover and simmer on low for 12–15 minutes, or until the fish is just cooked through and flakes easily.
8
Finish and Garnish: Remove bay leaf. Sprinkle with fresh cilantro and parsley before serving.
Additional Information

Equipment Needed

  • Large deep skillet or Dutch oven
  • Sharp knife
  • Cutting board
  • Mixing bowls
  • Measuring spoons

Nutrition (Per Serving)

Calories 295
Protein 29g
Carbs 15g
Fat 13g

Allergy Information

  • Contains fish. Gluten-free and dairy-free, but check labels on canned tomatoes and spices for cross-contamination if required.
Meredith Sloan

Passionate home cook sharing simple, family-friendly recipes and practical kitchen tips.