Classic Spicy Moroccan Fish in Rich Tomato Sauce Recipe
Introduction
This classic spicy Moroccan fish in a rich sauce is bursting with bold flavors and aromatic spices. It’s a comforting yet vibrant dish that’s perfect for a weeknight dinner or when you want to impress with minimal effort.

Ingredients
- 1 1/2 pounds firm white fish fillets (such as cod or halibut), cut into chunks
- 2 tablespoons olive oil
- 1 large onion, thinly sliced
- 3 garlic cloves, minced
- 1 teaspoon ground cumin
- 1 teaspoon ground paprika
- 1/2 teaspoon ground turmeric
- 1/2 teaspoon cayenne pepper (adjust to taste)
- 1 teaspoon ground coriander
- 1/2 teaspoon ground cinnamon
- 1 can (14 oz) diced tomatoes
- 1/2 cup water or fish stock
- 1/4 cup chopped fresh cilantro
- 1/4 cup chopped fresh parsley
- Salt and black pepper, to taste
- Juice of 1 lemon
Instructions
- Step 1: Heat olive oil in a large skillet over medium heat. Add sliced onions and cook until soft and translucent, about 5-7 minutes.
- Step 2: Add minced garlic and cook for 1 minute until fragrant.
- Step 3: Stir in cumin, paprika, turmeric, cayenne, coriander, and cinnamon. Cook spices for 1-2 minutes to release their aroma.
- Step 4: Add diced tomatoes and water or fish stock. Stir well and bring to a simmer.
- Step 5: Season the sauce with salt and pepper. Let it simmer gently for 10 minutes to thicken and blend flavors.
- Step 6: Carefully add the fish chunks into the sauce, spooning sauce over the pieces.
- Step 7: Cover and cook for 8-10 minutes until fish is cooked through and flakes easily with a fork.
- Step 8: Stir in fresh cilantro, parsley, and lemon juice. Adjust seasoning if needed.
- Step 9: Serve hot with crusty bread, couscous, or rice.
Tips & Variations
- Use firm white fish like cod, halibut, or even sea bass for best results to ensure the fish holds together while cooking.
- Adjust cayenne pepper according to your heat preference, or substitute with smoked paprika for a milder, smoky flavor.
- For a richer sauce, add a splash of white wine or a teaspoon of harissa paste along with the tomatoes.
- Fresh herbs make a big difference—if you don’t have cilantro or parsley, try using fresh mint or basil instead.
Storage
Store leftovers in an airtight container in the refrigerator for up to 2 days. Reheat gently on the stove over low heat to prevent the fish from breaking apart. This dish is best enjoyed fresh, but can also be frozen for up to 1 month; thaw overnight in the fridge before reheating.
How to Serve

Serve this delicious recipe with your favorite sides.
FAQs
Can I use frozen fish for this recipe?
Yes, frozen fish fillets can be used. Thaw them completely and pat dry before cooking to avoid excess moisture in the sauce.
Is this dish very spicy?
The cayenne pepper adds moderate heat, but you can easily adjust the spice level by reducing or omitting it if you prefer a milder flavor.
PrintClassic Spicy Moroccan Fish in Rich Tomato Sauce Recipe
This Classic Spicy Moroccan Fish recipe features tender chunks of firm white fish simmered in a rich, aromatic sauce made with a blend of traditional Moroccan spices, tomatoes, and fresh herbs. Perfectly balanced with cumin, paprika, turmeric, and a hint of cayenne, this dish brings bold flavors and vibrant colors to your table, served best with couscous, rice, or crusty bread.
- Prep Time: 15 minutes
- Cook Time: 25 minutes
- Total Time: 40 minutes
- Yield: 4 servings 1x
- Category: Main Course
- Method: Stovetop
- Cuisine: Moroccan
Ingredients
Fish and Sauce Ingredients
- 1 1/2 pounds firm white fish fillets (such as cod or halibut), cut into chunks
- 2 tablespoons olive oil
- 1 large onion, thinly sliced
- 3 garlic cloves, minced
- 1 teaspoon ground cumin
- 1 teaspoon ground paprika
- 1/2 teaspoon ground turmeric
- 1/2 teaspoon cayenne pepper (adjust to taste)
- 1 teaspoon ground coriander
- 1/2 teaspoon ground cinnamon
- 1 can (14 oz) diced tomatoes
- 1/2 cup water or fish stock
- Salt and black pepper, to taste
- Juice of 1 lemon
- 1/4 cup chopped fresh cilantro
- 1/4 cup chopped fresh parsley
Instructions
- Heat the Oil and Sauté Onions: Heat olive oil in a large skillet over medium heat. Add the thinly sliced onions and cook, stirring occasionally, until they become soft and translucent, about 5-7 minutes.
- Add Garlic: Stir in the minced garlic and cook for about 1 minute until fragrant, ensuring it doesn’t brown to maintain a fresh garlic flavor.
- Add and Toast Spices: Mix in ground cumin, paprika, turmeric, cayenne pepper, coriander, and cinnamon. Cook for 1-2 minutes while stirring frequently to release their aromatic oils and deepen flavor.
- Add Tomatoes and Liquid: Pour in the canned diced tomatoes along with water or fish stock. Stir well to combine all ingredients evenly, then bring the sauce to a simmer over medium heat.
- Season and Simmer: Season the sauce with salt and black pepper to your preference. Let it gently simmer uncovered for about 10 minutes so the sauce thickens and the flavors meld beautifully.
- Add Fish Chunks: Carefully add the fish chunks into the simmering sauce, making sure they are evenly spaced. Spoon some sauce over the fish pieces to coat them well.
- Cook Fish: Cover the skillet and allow the fish to cook gently for 8-10 minutes. The fish should be cooked through and easily flake with a fork when done.
- Finish with Herbs and Lemon: Stir in the chopped fresh cilantro and parsley along with the juice of one lemon. Taste and adjust the seasoning if needed.
- Serve: Serve the Moroccan spicy fish hot, paired perfectly with crusty bread, couscous, or rice for a complete meal.
Notes
- Adjust cayenne pepper according to your spice preference to make it milder or spicier.
- Use firm white fish like cod, halibut, or snapper for best texture that holds up during cooking.
- Fresh herbs added at the end brighten the sauce and add a fresh aroma.
- If you prefer a thicker sauce, simmer uncovered a bit longer before adding fish.
- Fish stock can be substituted with vegetable broth for a lighter flavor or if fish stock is unavailable.
Keywords: Moroccan fish, spicy fish recipe, cod in tomato sauce, North African cuisine, Mediterranean fish stew, cumin fish recipe, turmeric fish, one pan fish dish

