Ready in under 30 minutes, this delicious and easy Thai Green Curry with fish is infused with a rich coconut curry sauce that is savory and slightly sweet. Served over jasmine rice to soak up that incredible broth!
Craving more Thai flavors? Don’t miss our Thai Coconut Chicken, which is one of our favorite stir fry recipes.
Easy Thai Green Curry Recipe
Thai curry recipes are some of the easiest, most flavorful dinners you can make and there are so many variations to them. Unlike my Thai shrimp curry recipe, which uses a red curry paste, today’s recipe is made with green curry.
Compared to red curry, green curry is sweet with a base of coriander and green chilies instead of dried red chilies. It has lots of hints of lime and cilantro to give it a fresh flavor and though it can have a kick to it, it’s not known for being spicy like red curry. It’s also considerably more flavorful than most yellow curries. So if you want flavor and not a ton of heat, Thai green curry is the way to go.
Today’s Thai fish curry is made with a green curry paste from the store. While you can absolutely make your own, if you don’t have access to an Asian market it can be difficult to locate all of the items needed. I find that by taking a pre-made paste and adding a few ingredients, the flavor is comparable to making it from scratch and so much easier, of course. Plus, having a curry paste ready to go helps get this dinner on the table in under 30 minutes!
This recipe does call for a few specialty ingredients, most of which can be found in the Asian aisle of most stores.
(Scroll below to the printable recipe card for details and measurements.)
- Thai green curry paste: You can either buy this at the store or make your own.
- Garlic and Ginger: For wonderful aromatics and flavor.
- Lemongrass: Lemongrass paste is your best option but if you can’t find it, you can use finely minced fresh lemongrass instead.
- Vegetable broth: Use low sodium to avoid making the curry too salty.
- Coconut milk: You’ll need canned full-fat coconut milk, not coconut cream or a low-fat version.
- Worcestershire sauce: This is used as an alternative to fish sauce to provide a savory, umami flavor.
- Granulated sugar: Just a tiny bit to balance out the other flavors.
- Peeled lime skin: Cut into strips big enough that you can pick them out later.
- Thai basil leaves: If you can’t find Thai basil, Italian basil will work but reduce the amount.
- Lime juice: Use fresh for optimal results.
- Vegetable oil: Used for sautéing.
- Halibut fillets: Or similar white fish, with the skin removed.
- Asparagus: Our green vegetable of choice for this recipe.
- Crispy fried Asian shallots: A garnish that adds a salty, crispy crunch. Optional, but recommended!
- Jasmine rice: Steamed, for serving.
Once you have the basic green curry sauce down, you can mix up this recipe to fit your tastes.
- Swap out the protein. Not a fan of fish? You can easily make this Thai curry with chicken or even shrimp. If using chicken, chicken thighs are recommended over chicken breasts as they’ll stay juicy for longer. Large shrimp or prawns should be added in the last 5 minutes or so, as you want them to cook through but not overcook.
- Add other veggies. If asparagus isn’t your thing or if you’d like to add more vegetables, eggplant and zucchini are both great options that are popular in curries. Green beans, broccoli, cauliflower, carrots, potatoes and mushrooms can all be added as well.
- Make it vegetarian. If you’d prefer a vegetarian green curry, just omit the fish and add in more veggies. You can also add some tofu, just sauté it before adding.
How to Make Thai Green Curry with Fish
Like most Thai curries, this fish curry is easy to make and ready in under half an hour. Here’s a brief summary of how to make it:
(Scroll down to the printable recipe card for all the details and don’t miss the video below.)
- “Dry out” the curry paste. Heat the oil then add curry paste, garlic, ginger, and lemongrass, cooking for 2 to 3 minutes until it “dries out”. This is key to creating an aromatic curry full of flavor.
- Prepare the sauce. Add the vegetable broth and coconut milk, mixing to dissolve the paste. Add the Worcestershire sauce, sugar, and lime peels. Bring to a gentle simmer.
- Add the fish and remaining ingredients. Add the fish and reduce heat so the dish is bubbling gently. Cook for 5 minutes. Taste the sauce and adjust as needed. Add in the asparagus and cook 2 minutes until a bit softened, then stir in the basil and lime juice. Remove the lime peels.
- Serve. Serve the green curry over steamed jasmine rice, garnished with crispy fried shallots and additional basil leaves.
Tips for Success
If this is your first time making green curry, here are a few helpful tips.
- Be sure to “dry out” the curry paste. The first step of this recipe is perhaps the most important for that depth of flavor you want and expect in a good curry recipe. Sautéing the aromatics and drying out the curry paste makes a huge difference in the flavor of the dish.
- Don’t over-simmer the sauce. After adding the fish, the sauce should have reduced. It will still be on the thin side, which is how it should be as this is not a thick curry recipe. Do not keep simmering the sauce, as it will darken.
- Where to find fried Asian shallots. This crispy, salty garnish can be found at Asian grocery stores and may even be available in the Asian aisle at your local store. While it’s a beloved garnish for many Asian recipes, if you can’t find it for this one, no big deal.
Thai green curry is typically served over jasmine rice, which is how I serve mine. For a lower-carb option, you could try brown rice, cauliflower rice, or even quinoa. Since the sauce is on the thin side, I think it’s essential to have some sort of rice to soak up all the flavor!
How to Store & Reheat Leftovers
- How to store leftovers. Leftover Thai curry can be stored in the fridge for up to 3 days. Be sure to store leftovers promptly and do not leave them at room temperature for more than an hour before refrigerating.
- How to reheat leftovers. Leftover curry can be reheated in the microwave or on the stovetop. Reheat until hot and take care not to simmer the sauce too much to avoid thickening it or overcooking the fish.
More Thai Recipes:
Thai Green Curry
- 2 tablespoons vegetable oil
- 4 tablespoons Thai green curry paste
- 2 cloves garlic , minced
- 2 teaspoons finely grated fresh ginger
- 3 teaspoons lemongrass paste (see note)
- 1 cup low-sodium vegetable broth
- 14 ounces (1 can) full-fat coconut milk
- 2 teaspoons Worcestershire sauce
- 1 teaspoon granulated white sugar
- Strips of peeled lime skin from 1 small lime (make them big enough so you can pick them out later)
- 2 halibut fillets , skin removed, cut into 2-inch pieces
- 1/2 pound asparagus , trimmed and cut into 1-inch pieces
- 8 Thai basil leaves (see note)
- juice of 1/2 lime
- crispy fried Asian shallots (see note)
- steamed jasmine rice , for serving
- Heat oil in a heavy bottomed nonstick skillet or pot over medium high heat.
- Add curry paste, garlic, ginger, and lemongrass; cook for 2 to 3 minutes until it mostly "dries out."
- Add vegetable broth and coconut milk, mix to dissolve paste.
- Add in the Worcestershire and sugar.
- Add lime peels.
- Mix, then bring to a gentle simmer.
- Add fish, stir, then cover and lower heat to medium so it's bubbling gently. Cook 5 minutes.
- Taste sauce. If necessary add more Worcestershire sauce or salt for more saltiness or sugar for more sweetness.
- Add asparagus, cook 2 minutes until a bit softened, then stir through basil and lime juice. (Sauce should have reduced but will still be on the thin side, not thick – that's how it's supposed to be. Do not keep simmering or the sauce will darken.)
- Remove lime peels and discard.
- Serve curry over cooked jasmine rice and garnish with a little crispy fried shallots and torn basil leaves.