The U.S. Chinese restaurant industry generates $28.7 billion annually, with over 25,000 restaurants nationwide (IBISWorld, 2026). Yet recreating that restaurant-quality taste at home is entirely achievable. This recipe proves that authentic beef and broccoli stir fry, made with proper velveting technique, consistently outperforms most takeout versions. You get succulent flank steak, vibrant crisp-tender broccoli, and a deeply savory glaze—all in your own kitchen.
The secret isn’t complicated ingredients. It’s technique. Chinese cooks have perfected the velveting method for centuries, and it’s the single most important step for tender beef. This recipe breaks it down into five straightforward stages, all achievable in under 30 minutes, even for home cooks new to wok cooking.
Key Takeaways
Quick summary before you cook:
- Beef velveting—coating sliced meat in cornstarch and soy sauce—is the foundation of tender Chinese stir fry. This single step transforms tough cuts into buttery, restaurant-quality bites.
- Blanch broccoli for 90 seconds and shock in ice water to lock in the bright green color and crisp bite that takeout rarely achieves.
- High heat, proper sequencing, and a concentrated sauce built from oyster and hoisin are the three pillars that make this recipe beat takeout consistently.
Shopping List for Authentic Beef and Broccoli Stir Fry
This recipe relies on just seven core ingredients, each chosen for its role in authentic Chinese cooking. You’ve probably got most of these already. If you enjoy quick beef dishes, our simple beef and rice recipes use many of the same pantry staples.
- 1 lb flank steak, thinly sliced against the grain (sirloin works as a leaner alternative)
- 4 cups broccoli florets, fresh preferred but frozen is acceptable
- 3 garlic cloves, minced
- 1 tablespoon fresh ginger, grated
- 1/3 cup low-sodium soy sauce (or tamari for gluten-free)
- 2 tablespoons oyster sauce
- 1 tablespoon hoisin sauce
- 2 tablespoons cornstarch
- 2 tablespoons sesame oil, divided

How Long Does This Recipe Take?
Total time is 25 minutes: 15 minutes to prep ingredients and 10 minutes to cook. That’s roughly 40% faster than most restaurant delivery wait times. You prep while the water heats, so there’s no dead time.
- Prep: 15 minutes
- Cook: 10 minutes
- Total: 25 minutes
What Is Beef Velveting and Why Does It Matter?
Velveting is a Chinese cooking technique that transforms tougher cuts of meat into impossibly tender bites. You coat thinly sliced beef with cornstarch, soy sauce, and a touch of oil, then let it sit. The cornstarch forms a protective barrier that seals in moisture during high-heat cooking. This is the single most important step that separates homemade stir fry from takeout quality.
Here’s what happens: When raw beef hits a hot wok, proteins denature and squeeze out water. Velveting prevents this. The cornstarch coat insulates the meat, keeping it moist and tender even at extreme temperatures.
How Do You Blanch Broccoli for Crisp Texture?
Par-blanching (cooking briefly, then shocking in ice water) is the secret to that signature bright green, crisp-tender broccoli you get at good Chinese restaurants. Ninety seconds in boiling water is the sweet spot. Too short and it stays raw. Too long and it becomes mushy.
The ice bath stops the cooking instantly. Broccoli contains an enzyme that turns it gray if it cooks too long or too slowly, so shock it immediately. Your goal: vibrant green, stems tender but florets still snappy.

Why Does Your Sauce Taste Better Than Takeout?
Three sauces layered together create depth most home cooks never achieve. Soy brings saltiness and umami. Oyster sauce adds richness and body. Hoisin provides subtle sweetness and earthiness. When you whisk them with water and cornstarch before cooking, the cornstarch thickens the sauce to a glossy coat that clings to the beef and broccoli instead of pooling at the bottom of the pan.
The cornstarch is crucial. It absorbs into the beef and broccoli, creating that signature takeout sheen. Without it, you’ll get a watery sauce that tastes thin.
Step-by-Step Cooking Method
Step 1: Velvet the Beef (5 minutes)
Combine sliced beef with 1 tablespoon soy sauce, 1 teaspoon cornstarch, and 1 teaspoon sesame oil. Massage gently until evenly coated. Set aside for 5 minutes. This coat is your moisture barrier. Don’t skip this step.
Step 2: Blanch and Shock the Broccoli (2 minutes)
Bring a pot of water to a rolling boil. Drop broccoli florets in and start timing at 90 seconds. Have an ice bath ready. When the timer goes off, transfer broccoli to ice water immediately. Let sit 30 seconds, then drain and pat dry.
Step 3: Mix the Sauce (2 minutes)
Whisk together the remaining soy sauce (about 1/4 cup), oyster sauce (2 tablespoons), hoisin sauce (1 tablespoon), cornstarch (2 teaspoons), and 1/4 cup water. Stir until the cornstarch is fully dissolved. Taste. Add a pinch of salt if needed. Set aside.
Step 4: Cook the Beef (2 minutes)
Heat your wok or large skillet over high heat until you see a light smoke. Add 1 tablespoon sesame oil. Spread the velvet beef in a single layer. Let it sit undisturbed for 45 seconds. This creates a light sear. Toss once and cook another 45 seconds. The beef should be 80% cooked (it will finish in the final pan). Remove to a plate.
Step 5: Build Flavor and Finish (2 minutes)
Add the remaining 1 tablespoon sesame oil to the wok. Immediately add minced garlic and ginger. Stir constantly for 20 seconds, keeping the pan moving to avoid scorching. The aromatics should smell fragrant and toasty, not burnt.
Return the beef to the wok. Pour in the prepared sauce. Toss everything together continuously for 60 seconds. The cornstarch will thicken the liquid into a glossy glaze that coats every piece. Add the blanched broccoli. Toss for another 30 seconds until everything is hot and evenly coated. Done.
Nutritional Information Per Serving
Based on this recipe serving 4 people (without rice):
- Calories: 320
- Protein: 34 g (one serving provides roughly 68% of daily value)
- Carbohydrates: 18 g
- Fiber: 4 g
- Fat: 14 g
Broccoli alone provides 89.2 mg of vitamin C per 100g (USDA FoodData Central). One cup of broccoli covers approximately 90% of your daily vitamin C needs. The beef supplies iron and B vitamins crucial for energy and muscle function.
Variations Without Compromising Taste
Low-Carb Version: Replace standard broccoli with broccolini or serve over cauliflower rice instead of white rice. For another low-carb beef and broccoli dinner, see our keto hamburger broccoli skillet.
Reduced-Sodium: Use coconut aminos in place of soy sauce. Tastes 95% identical to traditional soy but with half the sodium.
Vegetarian: Substitute beef with thick slices of king oyster mushrooms. The texture is meaty, and the umami from oyster sauce intensifies the savory profile.
How to Serve This Stir Fry at Home
Serve over your base of choice. Each pairing brings something different:
- Jasmine rice: Traditional pairing. The fragrance of jasmine complements the savory sauce without competing.
- Quinoa: Extra protein and a slightly nutty flavor that adds depth.
- Bibb lettuce cups: Low-carb, creates an interactive meal where each person builds their own wraps.
- Cauliflower rice: Keeps carbs minimal while letting the stir fry shine.
For an upscale presentation, garnish with crispy fried shallots, sesame seeds, or a drizzle of extra sesame oil just before serving. Want a lighter take? Try our healthy beef and broccoli stir-fry with reduced sodium and fewer calories.
Five Mistakes to Avoid
Watery or mushy broccoli: Blanch for exactly 90 seconds and shock immediately in ice. Don’t skip the ice bath (it stops the cooking and locks in texture).
Tough, chewy beef: Two causes: overcooking or cutting with the grain instead of against it. Slice with the grain clearly visible, going perpendicular to the fibers. Cook only to 80% done in the pan (carryover heat finishes the job).
Flat-tasting sauce: If your sauce tastes one-note after cooking, add 1 teaspoon rice vinegar at the very end. The acidity wakes up the umami and makes every flavor pop. Don’t add earlier or you’ll lose the effect to evaporation.
Scorched or bitter garlic: Cook garlic and ginger for no more than 30 seconds. Keep the pan moving. Once they smell fragrant, add the beef. Burnt aromatics ruin everything.
Overly thick or thin sauce: The cornstarch slurry thickens the sauce. If it’s too thick when it hits the pan, add water one tablespoon at a time. If it’s too thin after 90 seconds of cooking, it means the heat wasn’t high enough or the cornstarch wasn’t fully dissolved. Whisk the sauce again before using it.
How to Store Leftovers
Store in an airtight container. The stir fry keeps for 3 to 4 days in the refrigerator. Interestingly, the flavors deepen overnight as the broccoli absorbs the sauce. Leftovers often taste better than fresh. Need more quick ground beef ideas? See our 30-minute meals to make with hamburger meat.
For freezing: store up to 2 to 3 months. Thaw overnight in the fridge and reheat quickly in a hot wok. The texture remains good. Pro tip: freeze the sauce separately if you’re meal prepping for the week. Combine only when serving to preserve crisp broccoli.
Frequently Asked Questions
Can I make this recipe gluten-free?
Yes. Use tamari instead of regular soy sauce and confirm your oyster sauce is certified gluten-free. Most oyster sauces are, but double-check the label to be safe.
Does velveting the beef actually make a difference?
Absolutely. Try it twice: once with velveting and once without. The difference is dramatic. With velveting, the beef stays tender and juicy. Without it, you get tougher, grainier texture. The cornstarch barrier genuinely changes the outcome.
What if I don’t have oyster sauce?
Oyster sauce adds umami depth that’s hard to replicate entirely. If you don’t have it, increase hoisin sauce to 2 tablespoons and add 1 teaspoon fish sauce. Won’t taste identical, but it’ll still be delicious.
Can I use chicken or pork instead of beef?
Yes to both. Slice thinly, velvet the same way, but reduce the cook time slightly. Chicken thighs work better than breasts because they stay moist. Pork tenderloin is excellent.
Why does my sauce pool at the bottom instead of coating the beef?
Your heat wasn’t high enough or the sauce wasn’t fully whisked before adding it to the pan. The cornstarch needs to thicken in a rolling boil. If your flame is too low, the cornstarch won’t gelatinize. Crank the heat and toss continuously.
How do you slice flank steak thinly without a meat slicer?
Freeze the flank steak for 30 to 45 minutes before slicing. It becomes firm enough to cut thin slices easily with a sharp chef’s knife. Aim for 1/8-inch thickness. Always cut against the grain so the fibers break apart and the meat eats tender.
Ready to cook? Gather your ingredients, set your heat high, and follow the sequence. You’ll have restaurant-quality beef and broccoli stir fry on your table in 30 minutes. No delivery fee. Better taste. Better nutrition. That’s why this recipe beats takeout every single time.







