Video recipe
Classic Cantonese Sweet and Sour Fish
Crispy. Tangy. Irresistible.
Adapted from Made With Lau
Every step links back to that moment in the video
A seafood rendition of the Cantonese sweet and sour classic, swapping pork for tender sole filets enrobed in a golden, shattering crust. Two-stage frying and an ice-water batter lock in succulent fish beneath a vibrant sweet and tangy glaze.
What makes this version work
Salting draws out excess water and firms the delicate fish so it will not break apart during frying
Ice water in the batter delays leavening activation, yielding an ultra-light, crisp crust
A 390°F flash re-fry forces out excess oil and creates lasting crunch that withstands the sauce
Adding a drizzle of finishing oil and tossing off the heat coats each piece without softening the crust
Ingredients
Tap to check off — your progress is saved
Fish & Marinade
- Sole fish filet 454gthawed, sliced with grain then angled across into chunksCod, flounder, or sea bass fillets can be substituted
- Salt (for curing fish) 2茶匙for drawing out moisture, rinsed off after
- Cornstarch (for marinade) 1湯匙
- White pepper 0.33茶匙
- Egg yolk 1隻yolk only, reserve white for other uses
Crispy Batter
- All-purpose flour 3湯匙
- Cornstarch (for batter) 1湯匙
- Baking powder 0.5茶匙
- Salt (for batter) 0.5茶匙
- Ice water 4.5湯匙
- Cooking oil (for batter) 1茶匙stirred into batter after smooth
Sweet & Sour Sauce & Slurry
- Rice wine vinegar 3湯匙
- Ketchup 4湯匙
- Sugar 7湯匙6 tbsp for sauce mix, +1 tbsp when adjusting flavor in wok
- Water (for sauce) 2湯匙
- Potato starch 1茶匙
- Water (for slurry) 1湯匙
Vegetables & Frying Oil
- Fresh pineapple 57gcut into chunks
- Onion 57gcut into triangular wedges and separated
- Red bell pepper 57gcut into triangular pieces
- Corn oil (for deep frying) 350mlfor deep frying, approx 12 oz
- Finishing oil 1茶匙drizzled in before tossing for gloss
Equipment
- Carbon steel wok
- Spider strainer
- Infrared thermometer / Oil thermometer
Steps
Slice fish along the grain then diagonally into chunks
Time 2 minTrim off the thinner tail section. Slice the sole filet lengthwise with the grain into four 2-inch wide strips, then cut each strip diagonally across the grain into 1-inch thick chunks.
How to tellEvenly sized thick chunks with angled cuts that hold batter betterWatch at 0:50Salt fish gently to draw out excess moisture
Time 1 minPlace the sliced fish in a bowl and add 2 teaspoons of salt. Mix gently by hand and let rest for 15 minutes to draw out excess moisture from the thawed fish and firm up the flesh.
How to tellFish surfaces begin to release moisture and take on a firmer textureCommon mistakeMix gently to avoid breaking the delicate fish piecesWatch at 1:20Cut pineapple, onion, and red bell pepper into chunks
Time 3 minPeel and core fresh pineapple, then cut into large chunks. Cut onion and red bell pepper into bite-sized triangular pieces, separating the onion layers.
How to tellVegetables cut into uniform triangular pieces for even cooking and glazingWatch at 2:40Whisk crispy batter with ice water and oil
Time 2 minIn a bowl, combine all-purpose flour, cornstarch, baking powder, and salt. Gradually whisk in 4.5 tablespoons of ice water until smooth, then stir in 1 teaspoon of cooking oil until glossy.
How to tellBatter is smooth and ribbon-like when lifted with a spoonWatch at 4:10Mix sweet and sour sauce and potato starch slurry
Time 2 minIn a small bowl, combine rice vinegar, ketchup, 6 tablespoons of sugar, and 2 tablespoons of water, stirring until sugar dissolves. In another dish, mix potato starch with 1 tablespoon of water for the slurry.
How to tellSauce is bright red with sugar fully dissolvedWatch at 5:30Rinse salted fish and dry thoroughly with paper towels
Time 3 minRinse the salted fish pieces in cold water 2 to 3 times to remove surface salt, then drain. Spread on paper towels, roll up, and gently press to squeeze out all excess moisture until completely dry.
How to tellFish surface is completely dry to the touch with slight tackinessCommon mistakeExcess water will dilute marinade, cause batter to slide off, and spatter in hot oilWatch at 8:00Marinate fish with cornstarch, white pepper, and egg yolk
Time 1 minTransfer dried fish to a bowl and add cornstarch, white pepper, and egg yolk. Gently massage with your hands so every piece is coated in a thin, silky layer of marinade.
How to tellFish takes on a golden sheen with a smooth, evenly coated surfaceWatch at 9:10First fry: Deep fry fish on medium heat until pale golden
Time 4 minHeat Medium heat (approx 330°F / 165°C)Heat corn oil in the wok to 330°F (165°C). Coat marinated fish in batter, scraping off excess, and lower pieces one by one into the oil. Fry on medium heat for 3 to 4 minutes until floating and light golden, then remove with a spider strainer.
How to tellFish pieces float to the surface with a firm, pale golden crustCommon mistakeFry in batches if your wok is small to prevent the oil temperature from droppingWatch at 10:40Second fry: Flash-fry at 390°F for extra crispness
Time 1 minHeat High heat (approx 390°F / 200°C)Increase the heat to bring oil up to 390°F (200°C). Return all fish pieces to the wok and flash-fry on high heat for 30 to 40 seconds. Remove immediately with a spider strainer and drain on paper towels once deep golden and crisp.
How to tellCrust turns deep golden brown with a distinct crisp rattling sound when shakenWatch at 12:20Flash-fry onion and bell pepper for crunch and color
Time 1 minHeat Residual hot oilTurn off the heat. Place onion and red bell pepper chunks in the spider strainer and submerge in the hot oil for 25 seconds, then lift and drain. Pour out excess oil and wipe the wok clean.
How to tellOnions turn translucent and peppers become glossy while retaining full crunchWatch at 12:50Simmer sweet and sour sauce and thicken with slurry
Time 2 minHeat Medium-low to low heatPour sweet and sour sauce into the clean wok over medium-low heat, stirring until gently simmering. Taste and add 1 extra tablespoon of sugar if needed. Turn heat to low and gradually stir in potato starch slurry until glossy and thickened.
How to tellSauce bubbles thick and glossy, coating the spatula smoothlyCommon mistakePour slurry gradually while constantly stirring to avoid lumpsWatch at 14:30Toss vegetables, pineapple, and crispy fish to coat and serve
Time 1 minHeat High heat then off heatAdd the fried vegetables and pineapple chunks, stir-frying on high heat. Turn off the heat, drizzle in 1 teaspoon of finishing oil, then toss in the crispy fish chunks. Mix rapidly for a few seconds to coat evenly, transfer to a platter, and serve immediately.
How to tellFish pieces are coated in a shimmering crimson glaze while staying firm and crispCommon mistakeDo not simmer after adding fish or the steam will soften the crisp shellWatch at 15:30
Chef's secrets
Salt Curing and Drying for Firm Fish
Thawed sole filets contain excess moisture that can dilute batter and cause the fish to fall apart. Salting for 15-20 minutes draws out water and tightens the flesh. Rinsing thoroughly and rolling in paper towels to squeeze out all moisture ensures firm, intact fish chunks.
Ice Water Slows Leavening for an Airier Crust
Using ice water in the batter keeps the mixture cold, preventing baking powder from prematurely activating in warm kitchens. A 3:1 ratio of all-purpose flour to cornstarch balances structure and crispness, while a teaspoon of oil creates micro-aeration for a light, shatteringly crisp crust.
Two-Stage Frying: Cook Through, Then Flash Crisp
Fry first at 330°F (165°C) on medium heat for 3-4 minutes to cook the fish gently without burning the crust. Rest briefly, then flash-fry at 390°F (200°C) for 30-40 seconds. The high heat drives out trapped oil, creating a crunchy shell that stays crisp even under sauce.
Finishing Oil and Fast Tossing Retain Crunch
Once the sweet and sour sauce is glossy and thickened with veggies added, turn off the heat and drizzle 1 tsp of finishing oil for shine. Add the crispy fish pieces and toss rapidly for just a few seconds to coat without soaking the batter, then serve immediately.
Storage & reheating
Fridge
Store in an airtight container in the refrigerator for up to 2 days. The sauce will naturally soften the crust over time.
Freezer
Freezing is not recommended as thawed fish pieces will lose texture and turn mushy.
Reheating
Reheat in an air fryer at 350°F (175°C) for 4-5 minutes or in an oven. Avoid microwaving to prevent a soggy crust.
Variations
Classic Sweet and Sour Pork
Replace sole fish with pork shoulder or spareribs marinated with a splash of soy sauce and rice wine, following the same battering and two-stage fry method.
Sweet and Sour Tofu
Use firm tofu cut into cubes, pressed dry with paper towels, battered and fried crisp, then tossed in sweet and sour sauce for a vegetarian twist.
FAQ
Can I use other types of fish instead of sole?
Yes. Any firm, boneless white fish filet works well, such as flounder, cod, sea bass, or grouper. Avoid oily or overly flaky fish that easily falls apart.
Why is two-stage frying necessary?
The first fry at 330°F (165°C) gently cooks the fish through and sets the batter. The second flash-fry at 390°F (200°C) expels absorbed oil and crisps the outer shell, preventing the sauce from instantly turning the crust soggy.
Why use ice water instead of warm water for the batter?
Ice water slows down the activation of baking powder at room temperature. When the chilled batter hits hot oil, the leavening agent expands rapidly, producing a light, airy, and delicately crunchy crust.
How do you keep the fish crispy after coating with sauce?
Ensure the sauce is fully thickened with slurry before adding the fish. Turn off the heat, add finishing oil, toss the fish quickly for just a few seconds to coat lightly, and serve immediately.
Can I use an air fryer instead of deep frying?
Wet batters do not work well in air fryers because the liquid drips through the basket. For air frying, switch to a dry breadcrumb/dredge coating, spray generously with oil, and air fry at 375°F (190°C) for 10-12 minutes.
Nutrition
Estimated per serving. Actual values vary with ingredients and portion size.
No time to cook?
The same wok-fired cooking, already made for you at Bryt Kitchen.
See the menu