Order shrimp and broccoli at any Chinese-American takeout and you get the same thing every time: tender curls of shrimp, crisp-tender florets, and a glossy dark sauce that stains the rice beneath it brown. The version you make at home usually falls short of that memory. The shrimp turn rubbery. The broccoli goes olive-drab and limp. The sauce pools on the plate instead of clinging.
None of that is the recipe's fault. It is a timing dish. Three minutes separate "takeout quality" from "why did I bother," and most home cooks lose the race because they treat it like a regular stir-fry instead of a sequence of small, deliberate moves. I have ruined this dish more times than I care to count by overcooking the shrimp while waiting for the broccoli to soften, so the method below is built to make that failure impossible.
This is a ten-minute dish built on one decision: cook the broccoli and the shrimp in separate windows so neither waits for the other. Blanch the florets for 90 seconds, sear the shrimp for about 60, then bring them together with a cornstarch-thickened sauce over medium heat. Undercook everything by a hair, because carryover heat finishes the job on the plate.
What kind of dish this really is
Despite its familiarity, shrimp and broccoli (西兰花炒虾仁) is not an old Chinese dish. Broccoli is a Western vegetable that arrived in East Asia late and never fully displaced the native gai lan, which Chinese cooks have been stir-frying with beef for over a century. What you think of as "shrimp and broccoli" is a Cantonese-American kitchen invention that borrows the brown-sauce grammar of dishes like beef and broccoli and applies it to shrimp. The same sauce logic shows up in shrimp with lobster sauce, and the technique of pairing a quick-cooking protein with a blanched green appears in everything from pepper steak to chicken and mushroom.
That lineage matters because it tells you the goal. You are not chasing wok hei you cannot reproduce on a home burner. You are chasing two textures (snappy shrimp, bright broccoli) held together by a sauce with enough body to coat a grain of rice. Get those three things right and the dish is done.
Ingredients
Ingredients at a glance

Serves 4 as one of several dishes, or 2 as a main over rice.
| Ingredient | Amount | Notes / substitute |
|---|---|---|
| Raw shrimp, shelled | 340 g (12 oz), about 12–15 shrimp | Medium-to-large (16/20 per pound). Thawed if frozen, patted very dry. Vein-on is fine. |
| Cornstarch (for the shrimp) | 1 tsp | This is "velveting lite," not a marinade. Do not skip. |
| Broccoli | 280 g (10 oz), one medium head | Standard heading broccoli, not gai lan. Peel the stalk and slice it in. |
| Garlic, minced | 2 cloves | Smashed flat, then chopped fine. Don't use a press; you want uneven shards. |
| Neutral cooking oil | 1½ tbsp | Peanut, canola, or avocado. Not olive oil. |
| Unsalted chicken stock (or water) | 90 ml (6 tbsp) | Stock gives the sauce a backbone. Water works; stock is better. See my homemade chicken stock. |
| Oyster sauce | 2 tbsp | The main savory note. A vegetarian mushroom oyster sauce is a fair substitute. |
| Light soy sauce | ½ tbsp (1½ tsp) | For salt and a clean soy edge. Light and dark soy are not interchangeable. |
| Dark soy sauce | ½ tbsp (1½ tsp) | For color only. Omit if you only have light; the dish will be paler but still good. |
| Cornstarch (for the sauce) | 1½ tbsp | This is more than feels right. It is correct. |
| Shaoxing rice wine | ½ tbsp (1½ tsp), optional | Read about Shaoxing rice wine; dry sherry is the classic sub. |
| Toasted sesame oil | 1 tsp | Stirred in off the heat, never used to fry. |
| Sugar | ¼ tsp | A pinch to round off the salt of the oyster sauce. |
| Ground white pepper | ⅛ tsp | White, not black. It disappears into the sauce visually and aromatically. |
The three things that decide whether this works
Before the steps, understand the three mechanisms in play. If you internalize these, you can wing the recipe; if you don't, following the steps to the letter will still produce a decent but unremarkable plate.
1. The cornstarch on the shrimp is velveting in miniature. A thin film of starch on the surface gelatinizes in the hot oil and forms a fragile shell that holds moisture in. It is not a coating for crunch; it is insurance against rubbery shrimp. One teaspoon is enough. More than that and you get a gummy film.
2. The broccoli is pre-cooked for a reason. Broccoli is dense. If you try to cook it from raw alongside shrimp in a hot wok, by the time the stalks are tender the shrimp are already overcooked, and the carryover heat will push them further. A 90-second blanch in boiling water softens the bite by relaxing the pectin that glues the cell walls together, while leaving the structure intact. That is why the florets go tender-crisp rather than mushy, and why the color turns vivid green and then holds for the brief time the dish is on the plate.
3. The sauce thickens by cornstarch gelatinization, not by reduction. You will not boil this sauce down. You will heat a cornstarch slurry to about 70–80 °C (160–175 °F), at which point the starch granules swell and burst and the liquid turns glossy. The moment that happens, you stop. Keep cooking and the starch network breaks down and the sauce thins again, which is the single most common reason a stir-fry sauce "goes watery" on the plate.
Method
- Prep and velvet the shrimp. If the shrimp were frozen, thaw them fully and pat each one dry with paper towels. Surface moisture is the enemy of a sear. Butterfly each shrimp by cutting along the back about halfway through and lift out the dark vein if you like (it is harmless; this step is cosmetic). Toss the shrimp with the 1 teaspoon of cornstarch and rub gently so each one is thinly coated. Let them sit while you do everything else.
- Cut the broccoli for even cooking. Separate the head into florets roughly the size of a golf ball, and cut the larger ones in half through the stem so they split open. Then peel the thick outer layer off the main stalk with a vegetable peeler and slice the pale inner core into thin coins. The peeled stalk is the best part of the vegetable and people throw it away out of habit.
- Blanch 90 seconds, then shock. Bring a generous pot of water to a rolling boil. Drop in the broccoli, set a timer for 90 seconds, and do not walk away. At 90 seconds the florets should be bright green and tender at the edge with a firm center. Drain immediately. If you are prepping ahead, rinse under cold water to stop the cooking; if you are cooking right now, just drain well and move fast.

Blanch in fully boiling water for about 90 seconds, then drain while the florets are bright green, tender at the edges and still firm in the centre.
- Mix the sauce while the broccoli drains. In a small bowl, whisk the stock (or water) with the 1½ tablespoons of cornstarch first, until smooth, then add the oyster sauce, light soy, dark soy, Shaoxing wine, sesame oil, sugar, and white pepper. Cornstarch settles to the bottom of liquid within seconds, so give this bowl a final stir right before you pour it, every time, no exceptions.
- Get the pan hot before the oil. Heat a wide skillet or your seasoned carbon-steel wok over high heat until a drop of water dances and evaporates in a second. Then add the oil and swirl. This order, pan hot then oil, keeps protein from sticking and keeps the wok from flash-rusting. Add the garlic and stir for about 10 seconds, just until you can smell it. Garlic burns at this temperature in 20 seconds, so the shrimp go in next immediately.
- Sear the shrimp, then stop the moment they curl. Spread the shrimp in one layer and let them sit for 15 seconds before tossing, so the starched surface sets against the pan. Toss and flip for another 30–45 seconds. The instant the shrimp curl into a C and turn pink on the outside but still look slightly translucent in the crease, add the drained broccoli. They will keep cooking from here; pulling them now is the whole secret.

As soon as the shrimp edges turn pink and the bodies curl loosely while the inner creases remain slightly translucent, add the drained broccoli; the shrimp will keep cooking.
- Cut the heat and sauce them. Add the broccoli, give the pan one toss, then pour in the sauce after stirring it one last time. Drop the heat to medium. Toss continuously for 30–60 seconds as the liquid turns from milky to glossy and clings to the shrimp and florets. The instant it coats a piece of broccoli without running straight off, kill the heat. Residual heat will tighten it another notch.
- Serve immediately, over rice. Scoop the lot, sauce and all, over freshly cooked steamed jasmine rice. The dish loses texture every minute it sits.
When it goes wrong
Most failures fall into one of four buckets. Here is how to read them and what to do.
The shrimp are rubbery or mealy. Two causes. Either you cooked them past the curl (next time pull them 5 seconds earlier; they should still show a faint translucence when the sauce goes in), or the shrimp were previously frozen and thawed in warm water, which damages the muscle fibers. Thaw shrimp overnight in the fridge, never under tap water. There is no rescue for overcooked shrimp; learn the visual cue instead.
The broccoli is dull green and soft. The blanch ran too long or the florets sat hot in the colander. Next time, pull at 90 seconds and shock under cold water if you are not stir-frying immediately. The vivid green comes from boiling-water heat expelling the trapped gases between the cells so the chlorophyll shows through; keep going and the cell walls collapse, the chlorophyll degrades, and the color goes gray-green.
The sauce is watery. Almost always because the cornstarch settled before you poured (you forgot the final stir) or because you kept cooking after it thickened and the starch gel broke. Less commonly, the shrimp or broccoli carried in too much water from draining. Fix the pour, fix the heat timing, and pat ingredients dry.
The sauce is a gluey lump. The heat was too low when you added it, or you did not toss. Cornstarch thickens wherever it touches hot metal, so it forms a skin on the pan if you stand still. Keep the food moving the moment the sauce hits.
Variations and pairings
The sauce is a template. Once you trust the cornstarch-to-liquid ratio (roughly 1 tbsp starch per 60 ml liquid), you can bend the flavor anywhere. Add a teaspoon of chili oil for heat. Swap half the stock for the brine from a jar of fermented black beans and you have a black-bean shrimp. A teaspoon of grated ginger added with the garlic warms the whole dish and pushes it toward the profile of a ginger-lobster-sauce shrimp.
If you want crunch beyond the broccoli, fold in cashews or toasted peanuts at the end, the way kung pao shrimp leans on peanuts. For a drier, more aromatic version, skip the sauce entirely and finish with a generous shower of salt-and-pepper seasoning, in the spirit of salt and pepper shrimp.
This is a wet dish, so serve it over rice or alongside something that absorbs. Plain steamed rice is the default. Noodles work too, but go with a soft wheat noodle like lo mein rather than anything crisp; the sauce will soften a crackling pan-fried noodle into a soggy mess. For a multi-dish meal, pair it with a dry stir-fry like shrimp and egg or shrimp fried rice and a clear soup, following the logic of a balanced Chinese feast: one saucy dish, one dry dish, one soup.
Storing and reheating
This dish is at its best the instant it leaves the pan, and I will be honest about the tradeoff: leftovers are fine but never as good. The cornstarch gel relaxes in the fridge and the broccoli softens overnight. If you must reheat, do it in a dry skillet over medium heat just until warm, with a teaspoon of water to loosen the sauce. Microwaving works but turns the shrimp rubbery faster than the pan. For the best results, keep the components separate in the fridge (blanched broccoli, raw shrimp, mixed sauce) and do the final stir-fry fresh, which is exactly how a restaurant does it on a busy night.
Frequently asked questions
A few questions come up again and again. Short answers below.
Do I have to devein and butterfly the shrimp?
No. The "vein" is harmless and butterflying is cosmetic. Skip both for a weeknight and the dish tastes identical. Butterflying does help the shrimp cook faster and curl more evenly, so it is worth the extra minute if you are serving guests.
Can I use frozen shrimp?
Yes, and most "fresh" shrimp at the counter were frozen anyway. Thaw them overnight in the fridge and pat them bone-dry before velveting. Surface moisture is what ruins the sear, not the fact that they were frozen.
What if I only have one kind of soy sauce?
Use light soy sauce for both measurements and skip the dark. The dish will be paler but the flavor lands in the same place. Dark soy is mainly a color tool here, not a flavor one.
Can I make this ahead for a crowd?
Yes, by splitting the work. Blanch the broccoli, mix the sauce, and velvet the shrimp up to a day ahead, then keep all three cold. The final stir-fry takes under five minutes, so you can do it at the last moment while guests sit down. Do not pre-cook the whole dish; reheated shrimp and broccoli are a disappointment.
My sauce is always thin. What am I missing?
Two usual suspects: the cornstarch settled before you poured the sauce, or you cooked it past the point where it thickened and the gel broke down. Stir the bowl right before pouring, and pull the pan off the heat the instant the sauce turns glossy.
The dish comes down to one sentence: cook the broccoli and the shrimp in separate windows and join them only at the end. Get that sequence right and everything else, the sauce, the seasoning, the timing, falls into place on its own.



