Coconut Fish Curry with Veggies
Okay, Let’s Talk About This Coconut Fish Curry
You know how some recipes just sort of sneak their way into your regular dinner rotation? Well, this Coconut Fish Curry with Veggies did exactly that in my house. It started out as a “use up the can of coconut milk before it expires” situation, which, honestly, is how many of my favorite comfort meals are born. I remember the first time I made it — my cousin stopped by unannounced (naturally, right as the kitchen was a disaster) and ended up staying for dinner. She still asks for “that legit coconut fish thing” whenever she visits. Half the time, I don’t even remember what veggies I threw in. Story of my life!
Why You’ll Love This (Or, You Know, Make It When You’re Stuck)
I make this when I want something a bit cozier than a basic stir fry but don’t feel like fussing over a hot oven. My family goes wild for it because it’s creamy, packed with veggies, and the fish cooks up super tender — even if you, like me, sometimes overestimate your multitasking skills and forget it for a minute (or, erm, five). Also, it’s a sneaky way to use up random produce. I’ve found that even my picky nephew will eat veggies if they’re swimming in coconut sauce. Go figure!
What You’ll Need (But Don’t Panic, Substitutions Galore)
- 400 ml coconut milk (I’ve used light coconut milk in a pinch, but full-fat is dreamy)
- 500g white fish fillets, like cod or snapper (I sometimes use frozen, just thaw first; salmon is tasty but makes it richer)
- 2 tbsp curry paste (red or yellow work; my gran swore by Mae Ploy, but any decent one is fine)
- 1 onion, chopped (if I’m out, shallots or even a handful of spring onions do the trick)
- 2 cloves garlic, minced
- 1 thumb-sized piece of ginger, grated (or a teaspoon of ground ginger in a pinch, but fresh is better)
- 1 red bell pepper, sliced
- 1 carrot, thinly sliced (or, honestly, whatever’s in the crisper)
- 200g green beans, trimmed (snow peas are good too; broccoli florets also work if you’re feeling wild)
- 1 tbsp fish sauce (or soy sauce, if you’re not a fan)
- Juice of 1 lime (bottled works but doesn’t hit quite the same note)
- Handful fresh coriander (optional, but it makes me feel fancy)
- Steamed rice, to serve (jasmine is my go-to, but basmati or even plain white rice is fine)
How I Usually Throw This Curry Together
- First, grab a biggish pan or deep skillet. Drizzle in a splash of oil and get it warming over medium heat. Chuck in the onions and let them soften. (Sometimes I forget at this step and just toss everyone in at once — it works out, but the onions taste better when sautéed first.)
- Add the garlic and ginger. Give it a minute or two until you can really smell it — this is when my dog usually wanders into the kitchen, nose twitching.
- Stir in the curry paste. I usually use two tablespoons, but if you’re a spice fiend, don’t be shy! Fry it off for about a minute — this helps wake up the flavors.
- Pour in the coconut milk and give it a good stir. It’ll look a little lumpy at first if the coconut milk is separated — don’t worry if it looks weird, it smooths out after a minute or so. Add the fish sauce and lime juice here too.
- Toss in your chopped veggies. I usually go bell pepper, carrot, and green beans, but honestly, whatever needs using up is fair game. Simmer for about 5-7 minutes, until the veggies are just starting to soften. (This is where I sneak a taste. For quality control, obviously.)
- Gently slide in your fish. Try to nestle the pieces under the sauce. Let it simmer gently for 6-10 minutes, until the fish is opaque and flakes easily. Try not to stir it too much or it’ll break apart — unless you like it that way, which I sometimes do.
- Scatter over some coriander if you’re feeling extra, or leave it out if you have a coriander-averse person at your table. Taste and add more lime or fish sauce if needed.
- Ladle it over heaps of rice and dig in. I always burn my tongue at this stage because I’m impatient and it smells too good not to dive in straight away.
Notes from My Own (Messy) Experience
- I once tried making this with coconut cream instead of milk — it was way too thick, more like a stew. Not bad, but very rich!
- Some curry pastes are way saltier than others. Maybe taste yours first (just a smidge, trust me) so you don’t oversalt at the end.
- A squeeze more lime right before serving perks it up, especially if you’ve reheated it. Actually, I find it works better if you save some lime for the end.
Variations & My Experiments (Some More Successful Than Others)
- Once swapped in tofu for the fish for my veggie friend — it’s good, but you need to fry the tofu first or it’s a bit spongy.
- Added a spoonful of peanut butter once just out of curiosity — interesting flavor, but maybe not for everyone!
- I tried tossing in sweet potato instead of carrots — tasty, but it takes longer to cook, so cut it small or nuke it for a few minutes first.
- Don’t try and add kale. Tried it, regretted it. It just goes all swampy and weird.
Equipment? Don’t Sweat It (Workarounds Included)
- A deep skillet or a shallow Dutch oven is grand. If you only have a regular frying pan, just go slow and maybe cover it for a few minutes to help the fish cook through.
- If you’re missing a zester for the ginger, just use the fine side of your box grater. (I lost my zester years ago and still haven’t replaced it. Oops.)

How Long Does It Keep? (Not Long in This House)
Technically, you can keep leftovers in the fridge for up to two days in a sealed container. But, and I’m being honest here, it rarely makes it past the first 24 hours. I actually think this tastes better the next day, but I’ve yet to prove it — it always disappears overnight. If you do have leftovers, reheat gently so the fish doesn’t toughen up.
How I Like to Serve It (And My Family’s Odd Traditions)
I serve this over piles of fluffy jasmine rice — sometimes with a lime wedge on the side (fancy, right?). My sister insists on a dollop of Greek yogurt, which I thought was weird at first, but actually, it’s pretty good? And, okay, once I added a handful of roasted peanuts for crunch. Everyone declared it “unexpectedly excellent.”
Pro Tips (Learned the Hard Way)
- Don’t rush the fish — I once cranked the heat to speed things up and ended up with tough, sad fish bits. Keep it gentle.
- If the curry looks too thin, just simmer it a bit longer before adding the fish. It thickens up nicely.
- Actually, I find it works better if you cut the veggies on the chunkier side so they don’t go mushy by the end.
FAQ — Real Questions from My Dinner Table (and Instagram DMs)
- Can I use shrimp instead of fish?
Yep, totally! Just toss them in for the last 3-4 minutes, so they don’t turn into rubber. Trust me, I learned the hard way. - Is this very spicy?
Depends on your curry paste. The first time I made this, I used a super hot Thai paste and my dad nearly did a lap around the house. Start mild, add heat if you want. - What if my curry splits?
Eh, it happens. Give it a good stir and it usually comes back together. Even if not, it still tastes smashing. - Can I freeze it?
I haven’t tried — fish can go a bit weird in the freezer form what I’ve read. But you do you! - Favorite store-bought curry paste?
I like Mae Ploy or Thai Table. But honestly, whatever’s on hand usually works. - Best coconut milk?
I’m partial to Thai Kitchen, but supermarket brands are fine. (My gran would disagree, but she’s not here!)
Oh, and last thing: don’t stress about it being perfect. The best batches I’ve ever made have been the ones where I was distracted by the radio, or chatting to a mate in the kitchen, or even just making it up a bit as I went along. That’s half the fun, isn’t it?
Ingredients
- 500 g white fish fillets (such as cod or tilapia), cut into chunks
- 1 can (400 ml) coconut milk
- 1 cup broccoli florets
- 1 red bell pepper, sliced
- 1 medium carrot, sliced
- 1 medium onion, finely chopped
- 2 cloves garlic, minced
- 1 tablespoon fresh ginger, grated
- 2 tablespoons curry powder
- 2 tablespoons vegetable oil
- 1 teaspoon salt
- 1/2 teaspoon black pepper
- 1 tablespoon lime juice
- Fresh cilantro, chopped (for garnish)
Instructions
-
1Heat vegetable oil in a large pan over medium heat. Add chopped onion, garlic, and ginger, and sauté for 2-3 minutes until fragrant.
-
2Stir in curry powder and cook for another minute. Add broccoli, bell pepper, and carrot, and sauté for 3-4 minutes.
-
3Pour in coconut milk and bring to a gentle simmer. Season with salt and black pepper.
-
4Add fish chunks to the pan. Cover and simmer for 10-12 minutes, or until the fish is cooked through and vegetables are tender.
-
5Stir in lime juice. Taste and adjust seasoning if needed. Garnish with fresh cilantro before serving.
Approximate Information for One Serving
Nutrition Disclaimers
Number of total servings shown is approximate. Actual number of servings will depend on your preferred portion sizes.
Nutritional values shown are general guidelines and reflect information for 1 serving using the ingredients listed, not including any optional ingredients. Actual macros may vary slightly depending on specific brands and types of ingredients used.
To determine the weight of one serving, prepare the recipe as instructed. Weigh the finished recipe, then divide the weight of the finished recipe (not including the weight of the container the food is in) by the desired number of servings. Result will be the weight of one serving.
Did you make this recipe?
Please consider Pinning it!!