Easy Thai Sweet-and-Sour Salmon

Thai sweet and sour fish
Philippe Desnerck / Getty Images
  • Total: 27 mins
  • Prep: 12 mins
  • Cook: 15 mins
  • Yield: 3 to 4 Servings
Nutritional Guidelines (per serving)
376 Calories
9g Fat
50g Carbs
26g Protein
See Full Nutritional Guidelines Hide Full Nutritional Guidelines
Nutrition Facts
Servings: 3 to 4 Servings
Amount per serving
Calories 376
% Daily Value*
Total Fat 9g 12%
Saturated Fat 2g 8%
Cholesterol 55mg 18%
Sodium 1712mg 74%
Total Carbohydrate 50g 18%
Dietary Fiber 4g 13%
Protein 26g
Calcium 136mg 10%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)

This fish recipe with sweet-and-sour sauce and vegetables is incredibly delicious, plus easy to make. It's an authentic Thai dish that is quickly put together and simmered on the stove, filling your kitchen with the fragrance and alluring scents of Thai cooking. Add sweet bell peppers and fresh coriander, and you have a gourmet Thai meal that's super healthy, yummy, and quick to make. As a bonus, any type of fish can be used for this recipe, from salmon to cod to snapper (fresh or frozen)! In this recipe, we'll use salmon.


  • 3 to 4 fillets salmon (or cod, snapper, or other firm-fleshed fish)
  • 1 red bell pepper (de-seeded and sliced)
  • 1 green bell pepper (de-seeded and sliced)
  • 1 medium onion (any cooking variety, chopped)
  • 3 cloves garlic (minced)
  • 1 stalk lemongrass (minced, or 2 tablespoons frozen prepared lemongrass)
  • 1/2 cup pineapple (chunks or tidbits, fresh or canned)
  • 2 teaspoons cornstarch (heaping, dissolved in 2 to 3 tablespoons water)
  • Coriander (to taste)
  • For the Sweet-and-Sour Sauce
  • 6 tablespoons ketchup
  • 2 tablespoons fish sauce (available in tall bottles at all Asian/Chinese food stores)
  • 3 tablespoons soy sauce
  • 1 1/2 cups water
  • 1 to 3 teaspoons chili sauce (or 1 to 3 fresh chilies, minced; or 1/2 to 1 teaspoon cayenne pepper)
  • 1 tablespoon vinegar (rice OR other vinegar, such as white or apple cider)
  • 2 to 3 tablespoons brown sugar (adjust according to taste)

Steps to Make It

  1. Gather the ingredients.

  2. Rinse the fish under cold water and pat dry. Using a sharp knife, cut the fillets into halves or thirds. Set aside.

  3. Pour 2 tablespoons canola or other oil for stir-frying into a wok or large frying pan. Set over medium-high heat. Add the onion, garlic, and lemongrass. Stir-fry until fragrant (about 1 minute).

  4. Add all the sweet-and-sour sauce ingredients. Stir well to incorporate.

  5. Now add the fish pieces plus the bell pepper slices and pineapple to the wok. Stir well. When sauce begins to bubble (nearing a boil), turn heat down to medium.

  6. Cover and allow to simmer for 5 to 6 minutes.

  7. Remove cover and stir well. Return cover and continue to simmer for another 5 to 6 minutes.

  8. Check fish by inserting a fork into the center of one of the thicker fillets. Gently pull apart the flesh. If it's still translucent, the fish isn't cooked yet. When flesh is opaque, it's done.

  9. If fish needs more time, return cover and allow to simmer 2 to 3 more minutes.

  10. When fish is done, taste-test the sauce. You should taste a balance between sweet, sour, and spicy, veering more on the sweet side. If not sweet enough, add a little more sugar. If too sweet, add a little more vinegar (1 to 2 teaspoons.) If not salty enough, add a little more fish sauce.

  11. To thicken the sauce, add the cornstarch (along with the water it's dissolved in). Stir well over medium heat, until the sauce has reached the desired thickness.

  12. To serve, scoop fish, vegetables, and sauce into a serving bowl. Top with fresh coriander and enjoy with plenty of Thai jasmine rice. Enjoy!