Sichuan Sweet and Sour Crispy Fish

Chinese food, Sweet and sour fish
400 / Getty Images
Prep: 30 mins
Cook: 30 mins
Total: 60 mins
Servings: 2 to 4 servings
Yield: 2 whole fish
Nutrition Facts (per serving)
2416 Calories
222g Fat
78g Carbs
33g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 2 to 4
Amount per serving
Calories 2416
% Daily Value*
Total Fat 222g 284%
Saturated Fat 17g 85%
Cholesterol 54mg 18%
Sodium 629mg 27%
Total Carbohydrate 78g 28%
Dietary Fiber 4g 13%
Total Sugars 19g
Protein 33g
Vitamin C 23mg 116%
Calcium 57mg 4%
Iron 4mg 24%
Potassium 769mg 16%
*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.)

One of the great Chinese restaurant dishes is a whole fish crispy-fried and then served with sweet-and-sour sauce. It is a dramatic presentation, and the combination of sweet-sour-hot-savory can't be beaten. Use small whole fish that have been scaled and gutted. It is traditional to leave the head on, but you can remove it if you'd like. You can use Pacific rockfish, black sea bass, perch, porgies, or any type of bass for this recipe.


For the Fish and Marinade:

  • 2 whole rockfish, or other pan-sized fish, scaled and gutted

  • 3 green onions, chopped

  • 1 1-inch piece ginger, finely chopped, peeled

  • 1 tablespoon Chinese cooking wine, or Japanese mirin

  • 1 tablespoon soy sauce

  • 1 teaspoon freshly ground black pepper

For Cooking the Fish:

  • 1 3-inch piece of peeled ginger

  • 1/2 medium onion

  • 3 cloves garlic

  • 1/2 finely chopped habanero chile, or 1 to 2 Thai chiles or 1 serrano

  • 4 cups peanut or vegetable oil

  • 2 cups flour, for dredging

For the Sauce:

  • 5 tablespoons tomato sauce or ketchup

  • 3 tablespoons sugar

  • 1 tablespoon Chinese cooking wine or Japanese Mirin

  • 1 tablespoon soy sauce

  • 5 tablespoons water

  • 1 1/2 teaspoons cornstarch


  • 1 tablespoon cilantro, finely chopped, for garnish

  • 1 tablespoon green onions, or chives, finely chopped, for garnish

Steps to Make It

  1. Gather the ingredients.

  2. Cut off the fins of each fish with kitchen shears or scissors. Remove the gills of the fish if they are still attached by cutting them out with the kitchen shears. Make 3 vertical slices along each side of the fish evenly spaced along its length. If you have a long fish, make 4 slices. Rinse the fish under cold water and pat dry.

  3. Mix the 3 chopped green onions, the 1-inch piece of finely chopped ginger, the tablespoon of Chinese cooking wine, the tablespoon of soy sauce and the black pepper together, then pour the mixture into a glass or plastic container, or a Ziploc bag. Place the fish in the container and make sure the marinade surrounds the fish.

  4. Let this sit in the fridge for 30 minutes.

  5. Julienne the 3-inch piece of ginger. (Keep in mind 3 inches is a guideline so that the ginger can be a bit larger or smaller.) Cut the ginger into a rectangle, then slice it into thin rectangles about 1/8-inch thick. Then slice these thin rectangles into very thin strips.

  6. Slice the 1/2 onion into very thin half-moons.

  7. Slice the garlic cloves as thinly as you can along the long side of the clove to make long pieces.

  8. Finely chop habanero chiles.

  9. Pour the oil into a wok and turn the heat on to medium. If you do not have a wok, use the largest, deepest skillet you have. A wok really matters here, though, as its shape prevents the tail fin from burning to charcoal.

  10. Mix the tomato sauce sugar, soy sauce, Chinese cooking wine, water, and cornstarch and stir vigorously to combine. Set it aside.

  11. Take the fish out of the fridge.

  12. Check the oil temperature. You want it to be about 300 F to 325 F. If you do not have a thermometer, the oil is ready when a drop of water tossed into the oil boils away immediately.

  13. Remove the fish from the marinade and dredge in flour. Shake off excess, and when the oil is at hot, slip the fish one at a time into the oil. You are probably going to have to cook one fish at a time. If so, turn the oven on to "warm."

  14. Fry the fish for at least 5 minutes per side. You want it to be golden brown. With 300 F oil, fry a 1-pound fish for 8 minutes on the first side, 5 minutes on the other side. Larger fish will need more time.

  15. When the first fish is done, remove it to a plate and put the plate in the warm oven. Fry the second fish the same way as the first.

  16. When the fish are done, ladle out all but about 1/4 cup of oil. Toss in the slivered ginger, the onion, the chiles, and the slivered garlic and stir-fry over high heat for 2 to 3 minutes.

  17. Add the sweet-and-sour sauce and stir well to combine. Bring this to a rapid boil and stir well. Cook for 2 to 3 minutes.

  18. To serve, pour some sauce on a plate, place the fish on top of it and garnish with the finely chopped chives and cilantro. This dish goes best with simple steamed white rice.

  19. Enjoy.

Recipe Tags: