
Crucian Carp and Tofu Soup (鲫鱼豆腐汤)
鲫鱼豆腐汤 · jì yú dòu fu tāng
The famous trick in this soup is not an ingredient, it is a temperature: you pour boiling water over a fish that has just been fried in hot oil, and the broth turns opaque white in under ten minutes. It looks like cream and it is nothing but emulsified fish fat and collagen. Crucian carp (鲫鱼) is the traditional choice in Jiangnan — small, bony, and far more flavorful than any fillet — and the tofu is there to soak up that broth and to make the soup a meal. Nursing mothers across China are given this soup, which tells you something about what it is believed to do.
Recipe author: HǎoWèi Test Kitchen
Home-cooking research team
Reviewed by HǎoWèi editorial team · Last updated 2026-08-29
Ingredients
- whole crucian carp, cleaned and scaled鲫鱼,宰杀去鳞洗净🏮 asian2 fish (about 400 g each)
- firm tofu, cut into 2.5 cm cubes老豆腐,切 2.5 厘米方块🏮 asian400 g
- fresh ginger, sliced生姜,切片🛒 local6 slices
- scallions, cut into lengths plus extra for garnish小葱,切段(另备葱花)🛒 local3 stalks
- neutral oil for frying煎鱼用油(清淡油)🛒 local2 tbsp (30 ml)
- Shaoxing wine绍兴黄酒🏮 asian1 tbsp (15 ml)
- boiling water沸水🛒 local1.5 L
- ground white pepper白胡椒粉🏮 asian1/2 tsp
- salt盐🛒 local1.25 tsp
whole crucian carp, cleaned and scaled: Any small whole freshwater fish works: tilapia, sea bream, or white carp. Ask the fishmonger to gut and scale it.
🌶️ Adjust to your taste
Pick a level and we'll show exactly how much to change — no more "适量".
Spice level
Saltiness
Oiliness
Make it vegetarian
Instructions
1Pat the fish completely dry inside and out with paper towels — water on the skin is what makes fish stick and tear. Score two shallow diagonal cuts on each side. Rub a little salt over the skin and let it sit 5 minutes, then pat dry again.
🔍 Look for 抹盐静置 5 分钟 · 5 minutes saltingVisual: 鱼皮呈哑光干燥而非湿亮;刀口约 3 毫米深,刚好划透鱼皮Skin looks matte and dry rather than glossy-wet; the cuts are about 3 mm deep, just through the skin
You know it's right when: 手指按压鱼皮——感觉发黏干涩,而不是滑腻Press a finger on the skin — it feels tacky and dry, not slippery
2Heat the oil in a wok or heavy pan over medium-high heat until it shimmers. Lay the fish in and do not touch it for 3 minutes. It should release cleanly when the skin has set. Fry until deep golden, then turn once and repeat on the other side.
🔍 Look for Medium-high 每面 3 分钟 · 3 minutes per sideVisual: 鱼皮由半透明灰白转为不透明的金褐色、边缘焦脆,刀口处的肉已变乳白Skin turns from translucent grey to opaque golden-brown with crisp edges; the flesh at the cut lines has gone opaque white
You know it's right when: 锅铲伸到鱼身下——能无阻力地铲起,锅底不留鱼皮Slide a spatula under the fish — it lifts without resistance and no skin stays behind on the pan
A dry, hot pan and a patient 3 minutes beats any non-stick coating.
3Add the ginger slices and scallion lengths around the fish, then splash in the Shaoxing wine and let it sizzle for 20 seconds. Now pour in the boiling water all at once — cold water here gives a thin, grey broth instead of a white one. This is the step that decides the whole dish.
🔍 Look for High heat 大火滚沸保持 10 分钟 · bring to a rolling boil and hold for 10 minutesVisual: 沸水接触热油的瞬间汤面泛白,2 分钟内整锅转为不透明的象牙白The moment the boiling water hits the hot oil it clouds over; within 2 minutes the whole pot turns opaque and ivory
You know it's right when: 汤真正不透明——隔着汤看不见鱼The broth is genuinely opaque — you cannot see the fish through it
4Hold at a rolling boil for 10 minutes, then add the tofu cubes, reduce to a medium simmer, and cook 15 minutes more. Keep it moving gently; hard stirring will break the fish into the broth.
🔍 Look for Medium heat 滚沸 10 分钟 + 微沸 15 分钟 · 10 minutes boiling, then 15 minutes simmeringVisual: 汤保持奶白浓稠感;豆腐块略微胀大并染上汤的象牙白Broth stays milky and thick-looking; tofu cubes turn slightly swollen and take on a pale ivory tint from the broth
You know it's right when: 豆腐里外都热——掰开一块中心冒热气Tofu is hot all the way through — break one open and steam escapes from the center
5Season with salt and white pepper, taste, and adjust. Skim any surface foam if needed. Ladle into bowls with a piece of fish and several cubes of tofu each, spoon the broth over, and finish with scallion. Serve very hot.
🔍 Look forVisual: 碗中是象牙白的汤、金皮的鱼、浅白的豆腐块,表面浮着鲜亮的葱圈Bowl of ivory broth, golden-skinned fish, pale tofu cubes, and bright scallion rings floating on top
You know it's right when: 汤味浓郁微甜、无腥气;咽下后一秒才泛起白胡椒的暖意The broth tastes rich and faintly sweet with no fishy note; the white pepper warmth arrives a second after swallowing
Tips
- · Dry the fish thoroughly before it hits the pan. Water is what makes skin tear.
- · Boiling water, never cold. The temperature shock against hot oil is what creates the white emulsion.
- · Hold a hard boil for the first 10 minutes — that is when the broth turns white. Drop to a simmer afterward.
- · Crucian carp is bony. Warn anyone eating it, and spoon broth over rice rather than picking at the fine bones.
- · Add a splash of milk if your fish is very lean and the broth refuses to whiten.
Sources & references
Quantities, technique notes, and substitution ratios are cross-checked against established Chinese cookery references and standard food-science sources.
- Read our editorial policy
- Fuchsia Dunlop, Land of Plenty: A Treasury of Authentic Sichuan Cooking
- USDA FoodData Central — ingredient nutrition and portion data
- Traditional Chinese family-kitchen practice and regional taste records
Common questions
What type of tofu should I use?
Silken/soft tofu (嫩豆腐) for mapo tofu and soups — silky, falls apart gently. Firm/extra-firm (老豆腐) for stir-fries, braises, and anything you want to keep its shape. If the recipe doesn't say, firm is the safe default for stir-fries.
Source: HǎoWèi ingredient guide
Can I skip Shaoxing wine? What's the substitute?
Dry sherry is the closest 1:1 swap (fidelity ~80%). No sherry? Use a splash of white wine plus a little water, or just skip it and add a tiny extra pinch of sugar — the wine's job is depth and removing meat's gamey notes, and a good marinade covers most of it.
Source: HǎoWèi substitution engine
Can I reduce the salt/soy in this recipe?
Yes — soy sauce is the main sodium source. Use light soy at 2/3 amount and finish with salt only to taste. Rinse canned/doubanjiang components if possible. Note: reducing soy also reduces color; a drop of dark soy or a pinch of sugar can restore depth without salt.
Source: HǎoWèi diet guide
🥢 Ask HǎoWèi
Questions about technique, ingredients, substitutions, and flavor — answered from our verified cooking knowledge base.
What to serve with it
A complete Chinese dinner in one plan — pick one from each role.
What cooks say
Made this? Leave a note.
- No comments yet — be the first!
Cook next

Sauce-Braised Crucian Carp
酱焖鲫鱼 (Sauce-Braised Crucian Carp) · jiàng mèn jì yú

Tomato and Tofu Soup (番茄豆腐汤)
番茄豆腐汤 (Tomato and Tofu Soup (番茄豆腐汤)) · fān qié dòu fu tāng

Hubei Pork Rib and Lotus Root Soup
排骨藕汤 (Hubei Pork Rib and Lotus Root Soup) · Pái Gǔ Ǒu Tāng

Salted Pork, Bamboo Shoot, and Fresh Pork Soup
腌笃鲜 (Salted Pork, Bamboo Shoot, and Fresh Pork Soup) · yān dǔ xiān