Homemade Thai Fish Curry photo
| |

Thai Fish Curry

I love this Thai fish curry because it’s forgiving, fast, and sings with bold, balanced flavors. It’s exactly the kind of dinner I make when I want something bright and satisfying without spending hours in the kitchen. Coconut milk gives the sauce a silky base, red curry paste brings the heat and depth, and fresh lime and herbs finish it with a bright, clean lift.

This recipe is practical at heart: simple prep, a single skillet, and a poach-in-sauce method that keeps the fish tender and moist. I’ll walk you through what to gather, the must-follow steps, and the little switches that make the curry work for different diets or what’s in your pantry.

Whether you’re cooking for two or feeding a family, this one delivers restaurant-worthy results without fuss. Read through the notes and tips — they’ll save you time and prevent common mistakes so the curry comes out exactly how you like it.

What You’ll Gather

Classic Thai Fish Curry image

Ingredients

  • 1 tablespoon (15 ml) coconut oil or vegetable or avocado oil — for sautéing the aromatics; coconut oil adds a subtle tropical note.
  • 1 medium yellow onion — finely diced, about ½ cup; builds the sweet base of the sauce.
  • 1 medium bell pepper — sliced; texture and color, any color works.
  • 1 cup green beans — chopped into 2-inch pieces; offer crunch and freshness.
  • 3 cloves garlic — minced; essential savory backbone.
  • 2 teaspoons grated ginger — fresh; bright, warming aromatics.
  • 1-2 medium chilies — deseeded and diced, optional; control the heat level.
  • 2 tablespoons red curry paste — the curry’s flavor core; adjust to taste.
  • 1 teaspoon ground turmeric — color and mild earthiness.
  • ½ teaspoon ground cumin — adds warmth and depth.
  • ½ teaspoon ground coriander — bright, citrusy lift.
  • 1 14-ounce can (400 g) coconut milk — full fat; gives the sauce creaminess and body.
  • 1 tablespoon (15 ml) fish sauce — salty umami; don’t skip or fully replace.
  • 1 teaspoon coconut sugar — or light brown sugar; balances heat and acid.
  • 1 ½ pound (680 g) fish fillets — I used cod, sliced into 2-inch chunks; firm white fish holds up well.
  • Cooked jasmine rice — for serving; soaks up the sauce.
  • Fresh lime juice — from 1 large lime; brightens and lifts the finished curry.
  • 2 tablespoons fresh cilantro — chopped; fresh herb finish.
  • 2 tablespoons fresh Thai basil — chopped, optional; classic in Thai-style curries if you have it.

Mastering Thai Fish Curry: How-To

  1. Heat 1 tablespoon (15 ml) coconut oil (or vegetable or avocado oil) in a 12-inch skillet over medium heat.
  2. Add the finely diced medium yellow onion (about ½ cup). Sauté until the onion starts to soften, about 2 minutes.
  3. Add the sliced bell pepper and the chopped green beans (2-inch pieces). Cook, stirring, for 1 minute.
  4. Add the minced garlic, grated ginger, and the diced chilies (if using). Sauté, stirring, for 30 seconds.
  5. Add 2 tablespoons red curry paste, 1 teaspoon ground turmeric, ½ teaspoon ground cumin, and ½ teaspoon ground coriander. Sauté, stirring, for 30 seconds. If the paste sticks or the pan looks dry, add a splash of water and scrape any browned bits from the pan to deglaze.
  6. Pour in the 14-ounce (400 g) can of full-fat coconut milk, 1 tablespoon (15 ml) fish sauce, and 1 teaspoon coconut sugar (or light brown sugar). Stir to combine, bring to a gentle simmer, and cook until the sauce is smooth and slightly thickened, about 3–4 minutes.
  7. If needed, cut the 1 ½ pound (680 g) fish fillets into 2-inch chunks. Gently add the fish to the simmering curry, reduce heat if necessary to maintain a gentle simmer, cover, and poach for 4 minutes, or until the fish reaches an internal temperature of 145°F (63°C) and flakes easily.
  8. Remove the skillet from the heat, drizzle with the fresh lime juice from 1 large lime, and stir once to combine.
  9. Sprinkle with 2 tablespoons chopped fresh cilantro and 2 tablespoons chopped fresh Thai basil (optional). Serve warm over cooked jasmine rice.

Why Cooks Rave About It

Easy Thai Fish Curry picture


This curry balances richness, spice, and brightness in a single skillet. Full-fat coconut milk yields a luscious mouthfeel that carries the red curry paste’s aromatics without overpowering the delicate fish. The quick poaching method keeps the fillets moist and flaky — no drying out, no valet-sized portions.

It’s also flexible. Swap vegetables based on season or what’s in your fridge. Want more heat? Add the chilies. Prefer milder, herb-forward notes? Increase lime and fresh herbs. The core technique — sauté aromatics, bloom spices, simmer in coconut milk, gently poach the fish — is textbook simple and consistently reliable.

Finally, it feels elevated without being precious: bright herbs, a squeeze of citrus, and that glossy bowl of curry over jasmine rice make it feel like a special night even on an ordinary weeknight.

Low-Carb/Keto Alternatives

Delicious Thai Fish Curry shot

  • Swap cooked jasmine rice for cauliflower rice to keep carbs low while still soaking up the sauce.
  • Reduce or omit coconut sugar; the curry will be slightly less rounded but still balanced by lime and fish sauce.
  • Keep the full-fat coconut milk — it’s keto-friendly and gives needed creaminess.
  • Serve with extra non-starchy vegetables (steamed bok choy, zucchini ribbons) instead of rice to bulk the meal without carbs.

Essential Tools for Success

  • 12-inch skillet with a lid — the recipe is built around one skillet for even cooking and easy poaching.
  • Sharp knife and a cutting board — quick, uniform cuts (especially the fish) make timing consistent.
  • Liquid measuring tools for the coconut milk and fish sauce — accuracy matters for balance.
  • Instant-read thermometer (optional) — helps confirm the fish reaches 145°F (63°C) without overcooking.

What Not to Do

  • Don’t rush the sauté stage. When you add the curry paste and spices, give them the 30 seconds to bloom in the fat — skip this and the sauce won’t develop depth.
  • Don’t let the coconut milk boil aggressively while the fish cooks. A gentle simmer is all you need; higher heat will toughen the fish and can split the coconut milk.
  • Don’t over-salt early. Fish sauce is potent; add it during the sauce stage and taste before tweaking additional salt.
  • Don’t crowd the pan when adding fish. If pieces overlap, they’ll steam instead of poach evenly.

Dietary Swaps & Alternatives

  • Vegetarian: replace fish with firm tofu (extra-firm, pressed) added at step 7 and warmed through; increase simmer time to let flavors penetrate.
  • Gluten-free: the recipe is naturally gluten-free if your red curry paste and fish sauce are certified gluten-free — always check labels.
  • Lower sodium: use a reduced-sodium fish sauce and skip extra salt; boost acidity with lime to compensate.
  • Different fish: use halibut, sea bass, or salmon — adjust poaching times slightly for thicker cuts.

If You’re Curious

Try these little experiments to learn what each element contributes. Make the curry once without fish sauce and you’ll notice how much umami is missing. Try serving it with brown rice or soba and you’ll see the textural and flavor change — jasmine rice’s neutral fragrance is a classic match, but the curry plays nicely with others.

If you want more body in the sauce, simmer an extra 1–2 minutes after adding coconut milk, watching closely to prevent boiling. If you prefer a thinner broth, stir in a splash of warm stock or water at the end.

Keep a small bowl of lime wedges and extra herbs on the table. Freshness at the last minute adds lift and keeps the curry from feeling heavy.

Keep-It-Fresh Plan

  • Refrigerate leftovers in an airtight container for up to 2 days. Fish will firm up and absorb more sauce, so reheat gently over low heat.
  • Freeze? I don’t recommend freezing the curry with the fish — the texture of the fish will degrade. Instead, freeze extra coconut-curry base (sauce and vegetables) without fish for up to 3 months and thaw before adding fresh cooked or gently poached fish.
  • To reheat, warm slowly on the stovetop; add a splash of coconut milk or water if the sauce looks separated or too thick.

Popular Questions

Q: Can I use green or yellow curry paste instead of red?

A: Yes. Green curry paste will give more herbal heat, while yellow will be milder and earthier. Adjust quantity to taste — red curry paste is the flavor profile here.

Q: What if I don’t have Thai basil?

A: Fresh cilantro alone works well. Thai basil adds an anise-like note, but the lime and cilantro keep the curry bright if basil isn’t available.

Q: How can I make this milder for kids?

A: Omit the chilies and start with 1 tablespoon of red curry paste instead of 2, then taste and add more if needed. You can also remove seeds from chilies to cut heat.

Q: Can I cook this ahead for guests?

A: Prepare everything up to the point of adding the fish (sauce and vegetables). Reheat gently, then add fish and poach just before serving so it’s tender and fresh.

Serve & Enjoy

Spoon the curry over a bed of steamed jasmine rice, scatter the chopped cilantro and Thai basil on top, and serve with lime wedges. A simple cucumber salad on the side cuts the richness and adds crunch. This curry is warm, fragrant, and forgiving — exactly the kind of dish I reach for when I want something impressive with minimal fuss.

If you’d like, plate family-style: bring the skillet to the table so everyone can heap rice and ladle curry — it feels cozy and makes portioning easy. Store any leftovers separately from rice when cooling, then reheat gently the next day. Enjoy the bright, tropical flavors and the comfort of a weeknight favorite done right.

Homemade Thai Fish Curry photo

Thai Fish Curry

A quick Thai-style red curry with fish, vegetables, and creamy coconut milk, served over jasmine rice.
Prep Time 15 minutes
Cook Time 10 minutes
Total Time 25 minutes
Servings: 4 servings
Course: Main
Cuisine: Thai

Ingredients
  

Ingredients
  • ?1 tablespoon 15 mlcoconut oilor vegetable or avocado oil
  • ?1 mediumyellow onionfinely diced about 1/2 cup
  • ?1 mediumbell peppersliced – any color
  • ?1 cupgreen beanschopped into 2-inch pieces
  • ?3 clovesgarlicminced
  • ?2 teaspoonsgrated gingerfresh
  • ?1-2 mediumchiliesdeseeded and diced optional
  • ?2 tablespoonsred curry paste
  • ?1 teaspoonground turmeric
  • ?1/2 teaspoonground cumin
  • ?1/2 teaspoonground coriander
  • ?114-ounce can 400 gcoconut milkfull fat
  • ?1 tablespoon 15 mlfish sauce
  • ?1 teaspooncoconut sugaror light brown sugar
  • ?1 1/2 pound 680 gfish filletsI used cod, sliced into 2-inch chunks
  • ?Cooked jasmine rice
  • ?Fresh lime juicefrom 1 large lime
  • ?2 tablespoonsFresh cilantrochopped
  • ?2 tablespoonsFresh Thai basilchopped optional

Equipment

  • Skillet or sauté pan

Method
 

Instructions
  1. Heat 1 tablespoon (15 ml) coconut oil (or vegetable or avocado oil) in a 12-inch skillet over medium heat.
  2. Add the finely diced medium yellow onion (about ½ cup). Sauté until the onion starts to soften, about 2 minutes.
  3. Add the sliced bell pepper and the chopped green beans (2-inch pieces). Cook, stirring, for 1 minute.
  4. Add the minced garlic, grated ginger, and the diced chilies (if using). Sauté, stirring, for 30 seconds.
  5. Add 2 tablespoons red curry paste, 1 teaspoon ground turmeric, ½ teaspoon ground cumin, and ½ teaspoon ground coriander. Sauté, stirring, for 30 seconds. If the paste sticks or the pan looks dry, add a splash of water and scrape any browned bits from the pan to deglaze.
  6. Pour in the 14-ounce (400 g) can of full-fat coconut milk, 1 tablespoon (15 ml) fish sauce, and 1 teaspoon coconut sugar (or light brown sugar). Stir to combine, bring to a gentle simmer, and cook until the sauce is smooth and slightly thickened, about 3–4 minutes.
  7. If needed, cut the 1 ½ pound (680 g) fish fillets into 2-inch chunks. Gently add the fish to the simmering curry, reduce heat if necessary to maintain a gentle simmer, cover, and poach for 4 minutes, or until the fish reaches an internal temperature of 145°F (63°C) and flakes easily.
  8. Remove the skillet from the heat, drizzle with the fresh lime juice from 1 large lime, and stir once to combine.
  9. Sprinkle with 2 tablespoons chopped fresh cilantro and 2 tablespoons chopped fresh Thai basil (optional). Serve warm over cooked jasmine rice.

Notes

Adjust the spice.For a milder curry, leave out the fresh chilies. If you like a bit of heat, add up to 3 of them.
Use Fresh Ingredients:Every ingredient in this recipe has a job to do, and they’ll be able to do that job best if they are fresh!
Use Different Vegetables:Saute carrots or mushrooms with the onions, or add broccoli, cauliflower, or sugar snap peas to simmer in the broth. Baby spinach or peas can be added at the end with the fish.
Storage:Keep leftovers in an airtight container in the fridge for up to 2 days. Reheat gently on the stove.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe Rating