Fish poached in coconut milk is exquisite, restaurant-worthy, take all the pics-worthy, and so tasty. Infused with basics like garlic, ginger, and shallots, coconut milk poached fish becomes perfectly tender. This is a simple recipe, but it’s all in the technique. Follow these easy tips for mouthwatering poached dover sole or use your fish of choice. This recipe has no butter and no sugar, but all flavor!
Updated August 30, 2025

Table of contents
Watch the Video
I love coconuts and I don’t know if that’s because my mom is Filipino and I grew up that way, or just because they taste really good to me. However, my husband doesn’t like coconut…BUT that has changed.
I started making some awesome coconut recipes for him like ginataang kalabasa at sitaw with shrimp, easy butternut squash curry, and my famous pork adobo in coconut milk. I have changed his mind! Yes, success! I am so happy he loves coconut now and I successfully converted him.
Therefore, coconut recipes are a thing in my house. He recently asked me for my delectable coconut milk poached fish, and once again, his plate was clean and it so nice to see that!
You will love fish poached in coconut milk and this is a great starter recipe to begin with if you haven’t already.
What’s Good About Coconut Milk Fish
This recipe is a star dish that shines for the following reasons:
- dairy free
- gluten free
- rich and creamy, but healthier and pescatarian
- easy to make
- light fish
- simple, easy to access ingredients
What is Fish Poached in Coconut Milk
Simply, coconut milk is infused and reduced with all natural flavors, aromatics, and spice allowing the perfect sauce for delicate fish.
The fish is then added into the sauce, and the fish poaches low and slow.
It only takes a short time to poach fish, depending on the fish, but it comes out so flavorful and tender. Each bite is a symphony of exciting flavors and cooked-to-perfection fish.
The key is that when the poaching begins, it truly is a patient process in order for the perfect fish texture.
This recipe is for poached dover sole which is one of those restaurant-quality wild caught choices that once you master this at home, there will be no need to spend more to eat this out. Personally, this is such a made-with-love dish that it can’t be better than homemade.

What Type of Fish to Use for Poaching in Coconut Milk
Poached fish in coconut milk requires a flavor profile that is mildly sweeter and light. A flaky fish will be the right compliment to a rich and creamy sauce like coconut milk.
Choosing oily, heavy, dense, and boldly flavored fish (more fish-ness to the taste and smell) do better in light sauces like simple butter, wine, or more liquid sauces for poaching.
I would also avoid very dense and meaty fish as they do not absorb sauce very well because the meat flakes are sealed tightly.
The fish that goes best with coconut milk are:
- Dover Sole
- Halibut
- Cod
- Snapper
- Sea Bream
- Grouper
- Haddock
What is Dover Sole
Dover sole is a delicate, sweet-tasting fish with a moist, firm texture. It has a subtle, mild flavor that pairs well with various seasonings and sauces, such as the sauce in this dish, making it a versatile choice for cooking.
The fine texture of dover sole lends itself well to techniques like poaching, allowing it to absorb flavors while remaining tender. That is why this recipe for poached dover sole is so ideal, the dover sole will absorb and meld with the coconut milk sauce for maximum lip-smacking.

In cooking, if you want your sauce and spices to really meld into the fish, dover sole is one of the top picks.
Once cooked, the poached dover sole is flaky and light. With the mild texture and taste, dover sole works best with simple sauces and light herbs or spice in order to shine, and not be out-shined.
I’m getting hungry…someone gimme a side of rice.
What is Poaching Fish
Poaching fish is a gentle cooking technique where the fish is submerged and cooked in a simmering or low-temperature liquid, typically a flavorful broth or sauce.
The liquid used for poaching can be water, wine, or milk, and in this case, coconut milk is used to infuse the fish with a creamy, aromatic flavor.
Poaching allows the fish to cook slowly and evenly, resulting in a tender, moist texture while absorbing the flavors of the liquid.
It’s a popular method for preparing delicate fish like dover sole, as it retains the fish’s natural flavors and yields a delectable dish.
How do you Poach Fish
To poach fish, follow these simple steps:
- Prepare the Poaching Liquid: Choose a flavorful liquid such as coconut milk infused with aromatics and spices. Reduce then bring the liquid to a hot temperature and barely a simmer, but not high simmering, in a wide, shallow pan.
- Select the Fish: Opt for delicate fish like dover sole, known for its fine texture. Pat dry and then season the fish with salt.
- Add the Fish to the Liquid: Carefully place the fish into the sauce. Ensure that the fish is fully submerged by scooping some sauce on top.
- Cook Low and Slow: Poach the fish gently at a low temperature, allowing it to cook slowly and absorb the flavors of the liquid. The exact cooking time will depend on the type and thickness of the fish. For thin dover sole, about 8-10 minutes will be enough.
- Serve: Once the fish is tender and cooked to perfection, carefully remove it from the poaching liquid. Serve the poached fish with the infused sauce and any desired garnishes.
Remember, poaching is a gentle cooking method that yields a moist and flavorful result. Enjoy your homemade poached fish!

Ingredients
- 1 lb Wild Dover Sole Filets – If you cannot find dover sole you can use a white fish of your choice like halibut, cod, or snapper.
- 1 can Regular Coconut Milk – Use only regular coconut milk for the best result
- 2.5 tbsp Vegetable Oil
- 2 tbsp Fresh Ginger – julienned/matchstick
- 5 cloves Fresh Garlic – 3 cloves crushed, and 2 cloves minced
- 1 Shallot – sliced rings
- 1.5 tbsp Fish Sauce or Vegan Fish Sauce – I have used both and they are equally very good for this recipe.
- Salt – to taste
- Black Ground Pepper – to taste
- 1 tbsp Green Scallions – garnish; I find this garnish to be essential.
- 1 tbsp Crispy Garlic – garnish; I find this garnish to be essential.
- Pinch Pepper Flakes – for heat (optional) I like gochugaru (Korean red pepper flakes. These are very mild, almost no heat.). Use you preference.
- Lime – optional; squeeze garnish
Equipment
- chef’s knife
- cutting board
- wire mesh skimmer
- sauté deep spoon spatula or similar
- large braiser pan – I love mine and it’s my only large braiser pan I use that works for tons of recipes. Here’s my kitchen must haves with these tools listed.
- wide, flat spatula to lift the fish when it is done cooking
Instructions How to Make Coconut Milk Fish
This recipe has simple ingredients, but to make perfect fish poached in coconut milk, the steps should be followed as listed. I recommend using all ingredients listed for the best dish.
- Prepare the ingredients as mentioned. Take three cloves of garlic and smash them down with the side of your knife or something flat. Then take two more cloves of garlic and mince them. Julienne the ginger. Slice the shallot in rings.
- Take your dover sole and pat it dry, then sprinkle with a little of the salt.
- Heat your braiser pan. Add oil. Once the oil is hot but just medium heat, not too hot, then add the minced garlic. (Do NOT add the smashed garlic)
- Sauté the garlic till golden and mix it into the oil. Then take your wire mesh skimmer and remove the garlic bits and set aside. Now you have your crispy garlic garnish and have infused the oil with garlic flavor.
- Then add the smashed garlic, julienned ginger, and shallot to the oil. Sauté until fragrant.
- Add the regular coconut milk.
- Add the fish sauce or vegan fish sauce. Mix.
- Bring to a simmer and reduce for 12 minutes. The coconut milk sauce should be bubbling. Stir often. Uncovered.
- Bring the flame down to low setting. Use your mesh skimmer to scoop out garlic chunks, ginger, and shallots for a smoother sauce. You can leave a little left in the sauce.
- The sauce should not be simmering. Gently add in each filet of dover sole.
- Scoop sauce to cover entirely the dover sole filets. Be sure the top areas have sauce on them.
- The sauce should be very hot but not bubbling. Cover with lid. 10 minutes.
- Remove lid. Gently mix sauce, scooping sauce on top of the fish. Remove from heat.
- Garnish with crispy garlic, sliced scallions, black pepper, and a pinch of red pepper flakes. Enjoy!

How to Serve Fish Poached in Coconut Milk
How you plate this dish is as important as the steps to prepare it.
- Lift the fish up with a wide and long spatula or else the fish will break apart.
- Serve in a bowl or dish with walls. Scoop sauce all over the dish and serve with a good ratio of fish, sauce, and toppings.
- Serve rice or veggies such as mustardy baby bok choy or simple sautéed vegetables on the side or in a separate bowl.
- Use utensils such as a spoon and fork, or spoon and chopsticks.
Enjoy!
Add Ins and Variations
- Add lemongrass; remove the lemongrass before eating.
- Try this with Red Thai Curry Paste
- Garnish with red Fresno chilis, lime, cilantro, or side of lime.
- Try with halibut, cod, or even a whole branzino fish.
- Add a pinch of turmeric or paprika.
- Add any greens at the end, into the sauce or as a side.
Notes
- choose white fish for best flavor with coconut milk
- go low and slow when poaching fish
- reduce the coconut milk and make sure to season it well
- garnish with lots of fresh scallions and you can even add cilantro


Coconut Milk Poached Dover Sole
Equipment
- 1 wire mesh skimmer
- 1 sauté deep spoon spatula or similar
- 1 wide, flat spatula to lift the fish when it is done cooking
Ingredients
- 1 lb Wild Dover Sole Filets If you cannot find dover sole you can use a white fish of your choice like halibut cod, or snapper.
- 1 can Regular Coconut Milk Use only regular coconut milk for the best result
- 2.5 tbsp Vegetable Oil
- 2 tbsp Fresh Ginger julienned/matchstick
- 5 cloves Fresh Garlic 3 cloves crushed and 2 cloves minced
- 1 Shallot sliced rings
- 1.5 tbsp Fish Sauce or Vegan Fish Sauce I have used both and they are equally very good for this recipe.
- Salt to taste
- Black Ground Pepper to taste
- 1 tbsp Green Scallions garnish; I find this garnish to be essential.
- 1 tbsp Crispy Garlic garnish; I find this garnish to be essential.
- Pinch Pepper Flakes garnish; optional
- Lime optional; squeeze garnish
Instructions
- Prepare the ingredients as mentioned. Take three cloves of garlic and smash them down with the side of your knife or something flat. Then take two more cloves of garlic and mince them. Julienne the ginger. Slice the shallot in rings.

- Take your dover sole and pat it dry, then sprinkle with a little of the salt.

- Heat your braiser pan. Add oil. Once the oil is hot but just medium heat, not too hot, then add the minced garlic. (Do NOT add the smashed garlic)2.5 tbsp Vegetable Oil
- Sauté the garlic till golden and mix it into the oil. Then take your wire mesh skimmer and remove the garlic bits and set aside. Now you have your crispy garlic garnish and have infused the oil with garlic flavor.

- Then add the smashed garlic, julienned ginger, and shallot to the oil. Sauté until fragrant.2 tbsp Fresh Ginger, 5 cloves Fresh Garlic, 1 Shallot

- Add the regular coconut milk. Add the fish sauce or vegan fish sauce. Mix.1 can Regular Coconut Milk, 1.5 tbsp Fish Sauce or Vegan Fish Sauce

- Bring to a simmer and reduce for 12 minutes. The coconut milk sauce should be bubbling. Stir often. Uncovered.

- Bring the flame down to low setting. Use your mesh skimmer to scoop out garlic chunks, ginger, and shallots for a smoother sauce. You can leave a little left in the sauce.

- The sauce should not be simmering. Gently add in each filet of dover sole.Scoop sauce to cover entirely the dover sole filets. Be sure the top areas have sauce on them.1 lb Wild Dover Sole Filets

- The sauce should be very hot but not bubbling. Cover with lid. 10 minutes.
- Remove lid. Gently mix sauce, scooping sauce on top of the fish. Remove from heat.Salt

- Garnish with crispy garlic, sliced scallions, black pepper, and a pinch of red pepper flakes. Enjoy!Black Ground Pepper, 1 tbsp Green Scallions, 1 tbsp Crispy Garlic, Pinch Pepper Flakes, Lime


LEAVE A COMMENT