Skip to Content

Thai Fish Curry

Sharing is caring!

This flavorful Thai fish curry recipe is the best! The zesty red curry paste and creamy coconut milk combine to form a delicious base for the fresh fish and chopped veggies.

If you like Thai food and a little bit of heat, you're going to love this veggie-heavy recipe. It's ready in about 40 minutes and makes 4 servings.

Serve this curry alongside some rice for a hearty and healthy dinner recipe.

Thai fish curry with rice in a bowl, next to a pot of curry.

Why You'll Love Thai Red Fish Curry

This delicious Thai fish curry is surprisingly easy to make and you'll love the bold and fresh flavors!

It keeps well in the refrigerator and develops flavor over time, making it a perfect meal prep recipe.

This is a great dinner party dish as well - the bright colors and zingy flavors will delight your guest.

Ingredients for fish curry on a marble backdrop.

Ingredients You'll Need

You'll need several fresh ingredients as well as some pantry staples to make this recipe. Here's what to get:

Fresh Fish - You'll need 1 pound of white fish fillets. You can use mahi mahi, tilapia, or any other type of white fish.

Vegetables - You'll use 1 red bell pepper (or orange) and 2 zucchini. If zucchini is not available you can substitute them for snow peas, snap peas, green beans, bok choy, or asparagus.

Coconut Milk - You'll need 1 can of unsweetened coconut milk. Make sure not to get just coconut cream, you need the coconut water as well to form the base of the curry.

Aromatics - You'll use 1 shallot, 2 garlic cloves, and 1-inch of ginger as the aromatic base of the curry.

Red Curry - You'll need 3 tablespoons of Thai red curry paste.

Oil - You'll need 2 tablespoons of olive oil (you can substitute coconut oil or vegetable oil as well) to sauté the fish and the vegetables.

Lime - You'll need 1 tablespoon of fresh lime juice and several lime wedges to serve alongside the curry.

Toppings - You'll use 2 teaspoons of kosher salt and ½ teaspoon of ground black pepper to top the fish and to add to the curry.

Red Thai curry and vegetables in a dutch oven.
Coconut milk fish curry in a dutch oven.

What to Serve with Thai Coconut Fish Curry

You can serve fish curry alongside Jasmine rice, brown rice, or cauliflower rice.

Fish curry is great when topped with fresh herbs and sliced red or green chiles. If you want to give it a little kick, add some fish sauce.

Thai fish curry in a red dutch oven.

More Delicious Fish Recipes to Try

If you love seafood, you've got to try some of our other favorite fish recipes!

Fish curry with coconut milk served with rice and limes.

Tips for Making this Recipe

Links on some posts are affiliate links and as an Amazon Associate I earn from qualifying purchases.

Specialty Ingredients - The type of fish you use will depend on what you have available near you. I've made this recipe using mahi mahi, tilapia, and sea bass. Any white fish with a meaty texture that is semi-firm will work. Both freshwater and saltwater fish will work.

Recommended Tools - You can use any large saucepan or dutch oven to make the curry. You'll need a medium nonstick skillet to sauté the fish as well.

Storing Tips - This recipe will keep in the refrigerator for up to 4 days. I would not recommend freezing it, as the fish and vegetables won't reconstitute well.

Alternatives - You can substitute red curry paste for green curry paste if you'd like a less spicy and sweeter curry!

If you try this recipe, let us know! Connect with us on Instagram and share your photos or leave us a rating.

Yield: 4 servings

Thai Fish Curry

Thai fish curry in a dutch oven.

This delicious Thai fish curry recipe is so full of flavor! The red curry paste and coconut milk form a perfect base for the fish and veggies.

Prep Time 15 minutes
Cook Time 25 minutes
Total Time 40 minutes


  • 2 tablespoons olive oil, divided
  • 2 teaspoons kosher salt, divided
  • ½ teaspoon ground black pepper
  • 1 pound mahi mahi (or other white fish)
  • 2 cloves garlic, minced or grated
  • 1-inch fresh ginger, minced or grated
  • 1 shallot, sliced
  • 2 medium zucchini, chopped into ½ inch pieces
  • 1 red or orange bell pepper, chopped into ½ inch pieces
  • 3 tablespoons Thai red curry paste
  • 1 (14.5 ounces) can coconut milk
  • 1 tablespoon lime juice
  • 1 lime, sliced
  • ½ cup chopped basil or other soft herbs (parsley, Thai basil, cilantro)
  • Optional - serve with rice and top with sliced red chiles


  1. Heat 1 tablespoon of olive oil in a shallow frying pan over medium heat. Pat the fish dry and sprinkle 1 teaspoon of salt and ½ teaspoon black pepper across the fish.
  2. Cook the fish in the frying pan for 3 to 4 minutes on each side, until the fish gently flakes. Set the fish aside. 
  3. Meanwhile, heat the remaining tablespoon of olive oil in a dutch oven or heavy-bottomed pot over medium-high heat. Once hot, add the garlic, ginger, and shallot and sauté for 1 minute. 
  4. Add the zucchini and bell pepper and sauté for another 3 minutes. 
  5. Add in the red curry paste and stir continuously for 30 seconds, then pour in the coconut milk. Stir till the curry paste has dissolved. 
  6. Increase the heat and bring the mixture to a low boil, reduce the heat and allow to simmer for 10 minutes. 
  7. Turn off the heat and stir in the lime juice. 
  8. Flake the white fish apart into several large 2-inch pieces. Add the pieces to the curry and stir to combine. Top with fresh basil leaves and serve immediately. 
  9. Optional - serve with white or brown rice and top (if desired) with sliced chiles.

Nutrition Information:



Serving Size:


Amount Per Serving: Calories: 406Total Fat: 21gSaturated Fat: 12gTrans Fat: 0gUnsaturated Fat: 7gCholesterol: 107mgSodium: 1036mgCarbohydrates: 26gFiber: 3gSugar: 5gProtein: 32g

Skip to Recipe