This recipe saved a Tuesday night that was heading straight for takeout territory. Noah had been clingy all afternoon, Lily needed help with a school project, and Jake was working late. I had flank steak in the fridge and a head of broccoli that needed using up, and I remembered that the sauce for beef and broccoli is basically pantry staples. Thirty minutes later, we were all sitting down to something that smelled better than anything that would have arrived in a cardboard box.
Chinese beef and broccoli is one of those dishes that feels impressive but is genuinely simple once you know the method. Tender, silky strips of beef coated in a glossy, savory sauce with just a hint of sweetness, and broccoli that stays bright green and has that perfect tender-crisp bite. Served over steamed rice, it is the kind of meal that makes everyone at the table go quiet for a minute because they are too busy eating to talk.
Why You'll Love This Recipe
- Ready in 30 minutes. From fridge to table faster than delivery, even on the busiest weeknights.
- Restaurant-quality sauce. The combination of oyster sauce, soy sauce, and sesame oil creates that deeply savory, glossy finish you get at your favorite Chinese restaurant.
- Tender, melt-in-your-mouth beef. A simple 15-minute baking soda marinade (the restaurant secret) makes affordable flank steak incredibly silky.
- One pan, easy cleanup. Everything comes together in a single wok or large skillet, which means less washing up and more time relaxing.
- Naturally balanced and wholesome. Lean protein, iron-rich broccoli, and a controlled sauce means this is a genuinely healthy meal that does not taste like diet food.
Ingredients You'll Need
The magic of this dish is in the layering of flavors. Every ingredient in the sauce plays a role, and the marinade does real heavy lifting on the beef. Here is everything you will need and why each component matters.
- 500g (1.1 lb) flank steak or sirloin, sliced very thin against the grain for the most tender result.
- 1 teaspoon baking soda, used in the marinade to tenderize the beef using the Chinese restaurant technique called velveting.
- 1 tablespoon soy sauce (for marinade), adds a base layer of seasoning directly to the meat.
- 1 tablespoon cornstarch (for marinade), helps the beef stay juicy and gives it that slight coating.
- 1 tablespoon neutral oil (for marinade), such as vegetable or avocado oil, helps the marinade adhere and promotes a good sear.
- 400g (14 oz) broccoli florets, cut into even, bite-sized pieces so they cook at the same rate.
- 3 cloves garlic, minced fine for fragrant depth in the sauce.
- 1 teaspoon fresh ginger, grated, adds warmth and that distinctive Chinese stir-fry aroma.
- 3 tablespoons oyster sauce, the backbone of the dish, rich and slightly sweet with an umami depth you cannot fake.
- 2 tablespoons low-sodium soy sauce (for sauce), builds saltiness and color in the final sauce.
- 1 tablespoon dark soy sauce, adds deep mahogany color and a richer, slightly molasses-like flavor.
- 1 teaspoon sesame oil, stirred in at the very end for that nutty, toasty finish.
- 1 teaspoon sugar or honey, balances the saltiness of the soy sauce and helps the sauce caramelize slightly.
- 120ml (half a cup) beef broth or water, creates the body of the sauce.
- 1 tablespoon cornstarch plus 2 tablespoons cold water, mixed into a slurry to thicken the sauce to that glossy, coating consistency.
- 2 tablespoons neutral oil (for cooking), for stir-frying at high heat without burning.
Slice the beef against the grain and as thin as possible. I aim for about 3mm thick slices. Popping the steak in the freezer for 20 minutes before slicing makes it much easier to cut thin, even strips. Cutting against the grain shortens the muscle fibers, which is what gives you that tender chew instead of a tough one.
Do not skip the velveting step. Baking soda raises the pH of the beef surface, which prevents the proteins from tightening too quickly during cooking. The result is that silky, almost luxurious texture you get at good Chinese restaurants. Just do not over-marinate or the texture can get a little spongy. Fifteen minutes is the sweet spot. If you love quick, flavorful beef stir-fry dinners, you might also enjoy my Korean Ground Beef Bowl, which uses a similar savory-sweet sauce concept over rice.
Note: Dark soy sauce is thicker, darker, and slightly sweeter than regular soy sauce. If you do not have it, just use an extra tablespoon of regular soy sauce and reduce the sugar slightly. The color will be a little lighter but the flavor will still be excellent.
How to Make Chinese Beef and Broccoli
Stir-frying moves fast, so I always get everything prepped and lined up before I turn on the heat. Have your sauce mixed, your beef marinated, and your broccoli blanched before anything goes near the wok. Once you start cooking, the whole thing is done in about 10 minutes.
Step 1: Marinate the beef.
Slice the flank steak into thin strips, about 3mm thick, cutting against the grain at a slight angle. Place in a bowl and add the baking soda, soy sauce, cornstarch, and 1 tablespoon of oil. Toss well to coat every piece, then let it sit for 15 minutes at room temperature. Do not go longer than 30 minutes or the texture starts to change.
Lora’s Tip: I always do this step first before I do anything else, even before I chop the broccoli. That way the 15 minutes of marinating time is not wasted time.
Step 2: Make the sauce.
In a small bowl, whisk together the oyster sauce, regular soy sauce, dark soy sauce, sesame oil, sugar, and beef broth. In a separate tiny bowl, mix the cornstarch with the cold water until smooth. Set both aside. Having these ready means the sauce goes straight in when the moment comes without any fumbling.
Step 3: Blanch the broccoli.
Bring a pot of water to a boil. Add the broccoli florets and blanch for exactly 90 seconds. You want them vivid green and just barely tender. Drain immediately and run under cold water or transfer to an ice bath to stop the cooking. This step locks in that beautiful color and means the broccoli only needs a quick toss in the pan later. If you love easy weeknight stir-fry style meals, my Sausage and Cabbage Stir Fry uses the same high-heat technique with brilliant results.
Lora’s Tip: Pat the blanched broccoli dry before it goes into the wok. Excess water will cause the oil to spit and will also prevent the beef from searing properly.
Step 4: Sear the beef.
Heat a wok or large skillet over the highest heat your stove can manage. Add 1 tablespoon of the cooking oil and let it get really hot, almost smoking. Add the beef in a single layer, working in two batches if your pan is not large enough. Sear for 60 to 90 seconds per side without moving it. You want color on the outside. Remove the beef to a plate and do not worry if it is slightly underdone in the center. It will finish cooking in the sauce.
Lora’s Tip: Overcrowding the pan is the number one mistake. If you pile the beef in, it steams instead of searing and you lose all that flavor. Two batches takes an extra two minutes but makes a huge difference.
Step 5: Build the dish.
Add the remaining tablespoon of oil to the wok. Add the minced garlic and grated ginger and stir-fry for 30 seconds until fragrant. Pour in the sauce mixture and let it come to a bubble. Give the cornstarch slurry a quick stir and pour it in. Stir constantly for about 60 seconds until the sauce thickens and turns glossy. Add the beef and the broccoli back in and toss everything together for another 60 seconds until coated and heated through. Taste and adjust seasoning. Serve immediately over steamed rice.
Lora's Kitchen Tips
- High heat is non-negotiable. Authentic stir-fry depends on what Chinese cooks call 'wok hei', the slightly smoky, charred flavor from intense heat. Use the largest burner you have and let the pan get very hot before any food goes in.
- A large skillet works if you do not have a wok. A wide, heavy stainless steel or cast iron skillet retains heat well and gives good results. Just make sure it is fully preheated before anything goes in.
- Have everything prepped before you start cooking. Stir-frying happens in under 10 minutes and there is no time to stop and chop something or measure a sauce ingredient. Mise en place is not optional here.
- Adjust the sauce to your taste. Like it sweeter? Add another teaspoon of honey. Want more heat? Add a teaspoon of chili garlic sauce or a pinch of red pepper flakes along with the garlic. The base recipe is just the starting point.
- Use low-sodium soy sauce if possible. The oyster sauce and dark soy sauce already add significant salt. Low-sodium soy sauce lets you control the seasoning level without the dish turning overly salty.
Variations and Substitutions
This recipe is a fantastic base and there are so many ways to make it your own depending on what is in your fridge or what your family prefers.
Chicken Version: Swap the beef for 500g (1.1 lb) of thinly sliced chicken breast or thigh. The velveting technique works just as well with chicken. Reduce the sear time to about 2 minutes per side.
Extra Vegetables: Add sliced bell peppers, snap peas, baby corn, or mushrooms along with the broccoli. Everything gets blanched together and tossed in at the end. It stretches the dish further and is a great way to use up vegetables before they go off.
Spicy Beef and Broccoli: Add 1 to 2 teaspoons of chili garlic sauce or a tablespoon of gochujang to the sauce mixture. It adds a deep, layered heat that is absolutely addictive.
Low-Carb Option: Serve over cauliflower rice instead of regular rice. The sauce is rich enough that you genuinely do not miss the regular rice at all.
Make it Gluten-Free: Use tamari in place of soy sauce and check that your oyster sauce is gluten-free (some brands are, some are not). Cornstarch is naturally gluten-free so the rest of the recipe needs no changes.
What to Serve with Chinese Beef and Broccoli
The classic pairing is steamed jasmine rice, and for good reason. The fluffy, fragrant rice soaks up every bit of that glossy sauce and balances the savory depth of the dish perfectly. I usually make a big pot and everyone helps themselves.
For something a little different, serve over noodles instead. Udon or lo mein noodles tossed in a little sesame oil are wonderful with the sauce from this dish. You could also serve it in lettuce cups for a lighter, fun presentation that Lily absolutely loves.
If you want a full spread, a simple cucumber salad dressed with rice vinegar, a pinch of sugar, and sesame seeds makes a cooling, refreshing side. Or try a clear miso soup on the side for a complete, balanced meal. For another satisfying Asian-inspired bowl dinner that the whole family will devour, my Dumpling Ramen Bowl is an incredible weeknight option and uses a lot of the same pantry staples.
Storage, Freezing, and Reheating
- Refrigerating: Store leftovers in an airtight container in the fridge for up to 3 days. The flavors actually deepen overnight, making it even better the next day for lunch.
- Freezing: This dish freezes well. Let it cool completely, then freeze in a sealed container or freezer bag for up to 2 months. The broccoli will soften slightly upon reheating but the flavor stays excellent.
- Thawing: Thaw overnight in the refrigerator. Do not try to rush it on the counter as it can affect the texture of the beef.
- Reheating: Reheat in a wok or skillet over medium-high heat with a splash of water or beef broth to loosen the sauce. A minute or two is all it needs. Microwave works in a pinch but the skillet gives much better results.
- Make-ahead tip: You can marinate the beef and make the sauce up to 24 hours ahead. Keep both covered in the fridge. Blanch the broccoli up to a day ahead too. Then when dinner time comes, the actual cooking is less than 10 minutes.
Frequently Asked Questions
Here are the questions I get asked most about this recipe:
What cut of beef is best for beef and broccoli?
Flank steak is my first choice because it has great flavor and slices beautifully thin against the grain. Sirloin and skirt steak are excellent alternatives. The key is thin slicing and the baking soda marinade, which makes almost any cut work well. Avoid stewing cuts like chuck unless you have a lot of extra time.
Can I make this without oyster sauce?
Oyster sauce is really central to the flavor here, but if you need to substitute, hoisin sauce is the closest option. It is a little sweeter and thicker, so use slightly less and thin it with a splash of water. The flavor will be different but still delicious. If you need a vegetarian or vegan version, look for mushroom-based oyster sauce, which is widely available at Asian grocery stores.
Why is my beef tough instead of tender?
There are two likely causes. The first is slicing with the grain instead of against it. Always look for the direction the muscle fibers run and cut perpendicular to them. The second is overcrowding the pan, which causes the beef to steam and seize up instead of searing quickly. Cook in batches and use high heat for the best texture.
Can I use frozen broccoli?
Yes, frozen broccoli works in a pinch. Thaw it completely and pat it very dry before adding it to the pan. Because it has already been blanched during the freezing process, you can skip the blanching step and just add it directly when the sauce is ready. The texture will be a little softer but perfectly acceptable.
Is this recipe suitable for meal prep?
It is one of my favorite things to meal prep. I make a big batch on Sunday and it keeps beautifully in the fridge for three days. I pack it with steamed rice in individual containers for easy weekday lunches. The sauce thickens up in the fridge but loosens right back up with a splash of water when reheated.
This Chinese beef and broccoli has earned a permanent spot in our weekly rotation, and I think once you make it, it will earn one in yours too. It is the rare recipe that feels like a treat, eats like a proper meal, and takes less time than it would to drive to the restaurant. Jake asks for it almost every week, and Noah has started requesting it by name, which at three years old is just about the highest praise I can imagine.
I really hope this becomes your go-to takeout fake-out. Let me know in the comments how it goes, and if you add any of the variations I would love to hear about them.
With love and soy sauce,
Lora x
Chinese Beef and Broccoli
4
servings15
minutes15
minutes345
kcalIngredients
500g (1.1 lb) flank steak or sirloin, sliced thin against the grain
1 teaspoon baking soda
1 tablespoon soy sauce
1 tablespoon cornstarch
1 tablespoon neutral oil (vegetable or avocado oil)
3 tablespoons oyster sauce
2 tablespoons low-sodium soy sauce
1 tablespoon dark soy sauce
1 teaspoon sesame oil
1 teaspoon sugar or honey
120ml (half a cup) beef broth or water
1 tablespoon cornstarch mixed with 2 tablespoons cold water (slurry)
400g (14 oz) broccoli florets, cut into bite-sized pieces
3 cloves garlic, minced
1 teaspoon fresh ginger, grated
2 tablespoons neutral oil for cooking
Directions
Slice the beef very thin against the grain. Combine with baking soda, soy sauce, cornstarch, and 1 tablespoon oil in a bowl. Toss to coat and marinate for 15 minutes at room temperature.
Whisk together all sauce ingredients (except the cornstarch slurry) in a small bowl. Mix cornstarch with cold water in a separate small bowl. Set both aside.
Blanch broccoli florets in boiling water for 90 seconds. Drain and immediately run under cold water to stop cooking. Pat dry thoroughly.
Heat a wok or large skillet over highest heat. Add 1 tablespoon oil. Sear beef in a single layer in two batches, about 60 to 90 seconds per side, until browned. Remove beef to a plate.
Add remaining 1 tablespoon oil to the wok. Stir-fry garlic and ginger for 30 seconds until fragrant. Pour in sauce and bring to a bubble. Add cornstarch slurry and stir until sauce thickens and turns glossy, about 60 seconds. Add beef and broccoli back in, toss to coat, and heat through for 60 seconds. Serve immediately over steamed rice.







