Beef & Broccoli

Beef & Broccoli
⏱️ cook time 25 minutes
🍽️ servings 4
⚡ Difficulty easy

intro

Tender velvety beef and crisp-tender broccoli tossed in a glossy savory umami sauce, a beloved Chinese-American takeout staple ready in under 30 minutes.

Ingredients

Flank steak 450 grams
Broccoli 350 grams (4 cups florets)
Low-sodium soy sauce 60 ml (1/4 cup)
Oyster sauce 45 ml (3 tablespoons)
Fresh ginger 15 grams
Garlic 10 grams (3 cloves)
Cornstarch 24 grams (3 tablespoons)
Neutral cooking oil (canola or vegetable) 30 ml (2 tablespoons)
Dark brown sugar 12 grams (1 tablespoon)
Toasted sesame oil 5 ml (1 teaspoon)
Ground white pepper 1/4 teaspoon
Water 80 ml (1/3 cup)

Steps

1

Velvet the beef

Slice 450g flank steak thinly against the grain into 5mm thick pieces. Toss with 1 tablespoon (8g) cornstarch, 1 teaspoon (5ml) soy sauce, and 1 teaspoon (5ml) neutral oil until evenly coated. Let rest at room temperature for 10 minutes to tenderize.

Step 1
step1:Velvet the beef
2

Whisk stir-fry sauce

In a small bowl, combine remaining 55ml soy sauce, 3 tablespoons (45ml) oyster sauce, 1 tablespoon (12g) dark brown sugar, remaining 2 tablespoons (16g) cornstarch, 80ml water, 1 teaspoon (5ml) toasted sesame oil, and 1/4 teaspoon ground white pepper. Whisk until fully smooth, with no cornstarch lumps remaining, and set aside.

Step 2
step2:Whisk stir-fry sauce
3

Blanch broccoli florets

Cut the head of broccoli into uniform bite-sized florets. Bring a medium pot of lightly salted water to a rolling boil over high heat. Add the broccoli florets and cook for 90 seconds until bright green and crisp-tender. Drain immediately and rinse with cold water to stop the cooking process, then set aside.

Step 3
step3:Blanch broccoli florets
4

Sear marinated beef

Heat 1 tablespoon (15ml) neutral oil in a large wok or heavy-bottomed skillet over medium-high heat until shimmering (about 180C/350F). Add the velvety beef slices in a single layer, working in two batches to avoid crowding the pan, and sear for 45 seconds per side until lightly browned at the edges. Remove seared beef to a clean plate and set aside.

Step 4
step4:Sear marinated beef
5

Cook aromatic base

Reduce heat to medium, add the remaining 10ml (2 teaspoons) neutral oil to the same wok. Finely mince the ginger and garlic, then add them to the oil, stirring constantly for 20 seconds until fragrant, taking care not to burn the garlic.

Step 5
step5:Cook aromatic base
6

Toss and finish dish

Return the seared beef and drained blanched broccoli to the wok, stirring to combine with the aromatics for 30 seconds. Give the pre-mixed sauce a quick re-whisk, then pour it into the wok. Stir constantly over medium heat for 1 to 2 minutes until the sauce thickens to a glossy coating that clings evenly to the beef and broccoli, then turn off the heat.

Step 6
step6:Toss and finish dish

Tips

1.Always slice flank steak against the grain (perpendicular to the long muscle fibers) to cut through tough connective tissue, resulting in tender, non-stringy bites.
2.Sear beef in small batches to avoid crowding the pan; overcrowding drops pan temperature quickly, causing beef to steam instead of developing a flavorful browned crust.
3.Cornstarch sinks to the bottom of the sauce bowl as it rests, so give the sauce a quick, vigorous whisk right before pouring it into the wok to ensure a smooth, evenly thickened coating with no lumps.

✨ You May Also Like

Main Course
🍜 United Kingdom

A showstopping classic of tender seared beef, savory mushroom duxelles, and crisp prosciutto wrapped in flaky golden puff pastry, baked to juicy perfection.

⏱️ 2 hours 1Main Course ★ 4.7
Main Course
🍜 India

Tender charred marinated chicken simmered in a rich, spiced creamy tomato sauce, this iconic Anglo-Indian curry pairs perfectly with basmati rice or warm naan.

⏱️ 50 minuteMain Course ★ 4.8
Main Course
🍜 Thailand

Classic tangy, sweet, and savory Thai stir-fried rice noodles with shrimp, tofu, and crunchy garnishes, balancing all five core Thai flavor profiles.

⏱️ 30 minuteMain Course ★ 4.6
Main Course
🍜 United Kingdom

Crispy golden beer-battered cod and fluffy double-fried chips, served with tangy tartar sauce and malt vinegar: the timeless, beloved British pub comfort classic.

⏱️ 45 minuteMain Course ★ 4.9
Main Course
🍜 Mexico

Smoky, chile-marinated pork tacos with caramelized pineapple, fresh cilantro, and lime: a beloved classic Mexican street food perfect for casual summer gatherings.

⏱️ 1 hour 45Main Course ★ 4.7
Main Course
🍜 United States

Crunchy Fritos corn chips layered with savory beef chili and melted cheddar, topped with cool, zesty fixings for a beloved, cozy Tex-Mex comfort food.

⏱️ 35 minuteMain Course ★ 4.9

Beef & Broccoli:Frequently Asked Questions

1.Why does my homemade beef and broccoli have tough, chewy beef instead of the tender takeout texture?
The two biggest culprits are cutting with the grain and overcooking! Slice flank steak as thin as possible against the grain, toss with a light cornstarch coating 15 minutes before cooking to velvet it, and sear for just 30 seconds per side—flank gets tough fast if cooked past medium-rare.
2.What can I use if I don’t have flank steak for this recipe?
Skirt steak, sirloin flap, or trimmed top sirloin all work beautifully as substitutes. Stick to thin, moderately lean cuts, always slice against the grain, and avoid tough cuts like chuck or overly dry cuts like eye of round, which won’t get that soft velvety texture no matter how you prep them.
3.How do I get that glossy, perfectly thick takeout-style sauce instead of a runny coating?
Whisk a small cornstarch slurry (1 part cornstarch to 2 parts cold water) into your mixed low-sodium soy, oyster sauce, and ginger base before adding it to the pan. Simmer gently for 30 to 60 seconds until it coats the back of a spoon—never dump dry cornstarch straight in, as that creates lumpy, uneven sauce.
4.How do I make sure my broccoli is crisp-tender, not mushy or undercooked?
Blanch trimmed broccoli florets in boiling, heavily salted water for exactly 90 seconds, then immediately shock them in an ice bath to stop the cooking. This locks in bright green color and snappy texture, so when you toss it with hot sauce and beef, it won’t turn soft and mushy.
5.Can I adjust this recipe to be gluten-free without losing that classic takeout flavor?
Absolutely! Swap standard low-sodium soy sauce for gluten-free tamari, and pick up a bottle of gluten-free oyster sauce (many regular versions use wheat-based thickeners). The rest of the core ingredients—flank steak, broccoli, fresh ginger, and cornstarch—are naturally gluten-free, so the flavor will taste identical to takeout.
6.I don’t have oyster sauce on hand—what’s a good substitute?
Oyster sauce delivers that signature briny, deep umami that makes this dish taste like takeout, but if you’re in a pinch, use equal parts hoisin sauce mixed with a tiny splash of fish sauce. Skip straight soy sauce as a replacement—it’s too salty and one-note, and won’t give you that rich, rounded sauce depth.
7.Why does my beef always stick to the pan when I stir-fry it?
You’re likely not getting the pan hot enough, using the wrong oil, or overcrowding the pan. Heat your wok or skillet until it almost smokes, use a high-smoke-point oil like avocado or canola, sear beef in small batches, and let it sit undisturbed for 30 seconds before stirring—it will release easily once a crust forms.
8.Can I prep components of this recipe ahead to make weeknight dinners faster?
Totally! Slice your flank steak, mix up your soy-oyster-fresh ginger sauce, and blanch and shock your broccoli up to 3 days ahead, storing each part in separate airtight containers in the fridge. When dinnertime hits, the whole stir-fry comes together in 5 minutes, faster than waiting for delivery.

Comments (8)

2 days ago

OMG this was SO good! I’ve been searching for a takeout dupe that doesn’t leave my wallet hurting and my kids begging for more, and this is it. Both my 7 and 10 year old cleared their plates without a single complaint (if you know, you know) and asked for seconds. The beef came out so tender, no weird chewy bits, and the broccoli had the perfect crunch instead of turning mushy. Total game changer for our weekly weeknight dinner rotation! Only thing I did extra was add a tiny pinch of red pepper flakes for a little kick.

yesterday

Wait the red pepper flakes trick sounds chef’s kiss! Did you use the regular crushed ones you get in the grocery store spice aisle, or the fancy kind?

yesterday

So glad the whole family loved it! Love the red pepper flake add, that’s such a great way to dial up the heat a little. A quick tip for any other folks trying that: add the flakes right when you toss the sauce in so the flavor infuses evenly!

3 days ago

This is perfect for my Sunday meal prep! The 25 minute cook time is no joke, I threw this together while my rice was cooking and had 4 servings ready to pack for work lunches all week. The sauce holds up so well in the fridge, no weird separation, and the broccoli doesn’t get soggy when you reheat it if you undercook it just a tiny bit like the recipe says. Already added this to my permanent meal prep list, 10/10.

2 days ago

That’s such a smart call for meal prep! So happy to hear it reheats well for you — pro move undercooking the broccoli just a touch, that’s exactly the trick to keep it crisp-tender through the week.

1 week ago

Tried this last night for my roommate and I, and we both agreed it tasted exactly like the beef and broccoli we get from our go-to Chinese takeout spot down the street — except it cost like a third of the price. I was a little worried I’d mess up the velveting step for the beef but it was way easier than all the fancy food blogs made it sound, which is perfect for a guy who mostly cooks frozen pizza and tacos on weeknights. Will definitely be making this again soon, probably next week when the takeout craving hits.

5 days ago

Made this for a potluck at my office last week and people were coming up to me for the recipe for HOURS. The only issue I ran into was that my flank steak was a little tough — I think I cut it against the grain? Wait no, I might have cut it too thick? Either way it was still delicious, but I want to get it perfect next time I make it for my partner’s birthday dinner next month.

3 days ago

I had the same issue the first time I made it! Turns out I skipped the 15 minute rest with the cornstarch and soy sauce marinade, that’s what makes it super tender. Don’t skip that step, total game changer.

2 days ago

So happy it was a hit at the potluck! Greg is totally right about the marinade step — that cornstarch coating locks in moisture so the beef stays tender. Also double check you’re slicing against the grain as thin as you can get it (pop the steak in the freezer for 15 minutes first to make slicing way easier!) and you’ll nail it next time for the birthday dinner.

1 week ago

Y’all, I made this after a long day hiking last weekend and it hit the spot so hard. I was exhausted, didn’t want to spend an hour in the kitchen, and this came together in literally the 25 minutes the recipe says. I used frozen broccoli because I didn’t have fresh on hand and it still turned out amazing, no weird mushy texture. Paired it with some jasmine rice and it was the perfect post-hike carb load.

5 days ago

Frozen broccoli hack is genius! I always keep a bag in my freezer for last minute meals, can’t wait to try this with it instead of running to the store for fresh.

2 weeks ago

I’ve tried like 4 different beef and broccoli recipes off this site and this one is hands down the best. The sauce balance is perfect — not too salty, not too sweet, just that exact savory umami flavor you want from takeout. I added a little extra garlic because I’m a garlic fiend, and it was chef’s kiss. My only note is that if you like your sauce extra thick, you can mix a tiny bit more cornstarch slurry in, but the recipe ratio is perfect as written for normal people.

2 weeks ago

Love the extra garlic add — there’s no such thing as too much garlic if you ask us! Great tip about the extra cornstarch for folks who prefer a thicker sauce, that’s an easy tweak anyone can make without messing up the flavor.

yesterday

Wait, has anyone tried making this with chicken instead of beef? My sister doesn’t eat red meat and I want to make this for our family dinner next Sunday when she’s in town. I feel like the sauce would be just as good with chicken breast or thighs, but I don’t want to mess it up! Also, can I make the sauce ahead of time and store it in the fridge?

2 hours ago

I made it with chicken thighs last week! Just cut them into bite sized pieces, did the same cornstarch marinade, and it turned out amazing. The sauce keeps for like 5 days in a mason jar in the fridge too, I pre-make a batch every other week for quick stir fries.

30 minutes ago

Great question! This recipe works beautifully with chicken (thighs are our favorite swap for extra juiciness, but breast works too if that’s what you have). The sauce absolutely can be made ahead — just give it a good shake before you pour it in the pan, since the cornstarch will settle to the bottom. Hope the family dinner goes great!

just now

This is so much better than the takeout we usually order on Friday nights! My husband is super picky about Chinese takeout (he swears his mom’s homemade version is unbeatable) and even he went back for a second helping. I tossed some toasted sesame seeds on top for a little extra crunch and nuttiness, and it made the whole dish feel fancy even though it took barely any time to throw together. We’re definitely replacing our usual Friday takeout run with this recipe from now on!