Chinese Beef and Broccoli is a quick, savory stir fry with tender beef strips, crisp-tender broccoli, and a glossy garlic-ginger sauce that’s ready faster than takeout. This Chinese-American classic brings bold flavors with just a handful of ingredients and tastes even better than your favorite restaurant version.
Love More Dinner Ideas? Try My Honey Garlic Ground Beef and Broccoli or this Slow Cooker Unstuffed Cabbage Rolls next.

Why You’ll Love This Recipe
This beef and broccoli is a weeknight lifesaver that delivers big restaurant flavor in just 20 minutes flat. The beef stays tender and juicy, the broccoli keeps its beautiful bright green color, and that savory sauce with hints of five-spice and sesame clings to every bite. It’s the kind of dinner that makes everyone think you spent hours cooking.
Print
Chinese Beef and Broccoli
- Total Time: 4 servings
- Yield: 4 servings
Description
Quick and easy Chinese Beef and Broccoli stir fry with tender beef, crisp broccoli, and a savory garlic-ginger sauce. This restaurant-quality dish takes just 20 minutes and tastes better than takeout. Perfect for busy weeknights!
Ingredients
Sauce
-
2 tablespoons cornstarch
-
¼ cup water
-
1 teaspoon sugar
-
1 tablespoon dark soy sauce
-
1½ tablespoons light soy sauce
-
1 tablespoon Chinese cooking wine (Shaoxing wine)
-
⅛ teaspoon Chinese five-spice powder
-
1 teaspoon sesame oil (optional)
-
⅛ teaspoon black pepper
Stir Fry
-
2 tablespoons neutral oil (vegetable or canola)
-
12 oz beef (flank, rump, or sirloin), thinly sliced
-
1 garlic clove, finely chopped
-
1 teaspoon fresh ginger, finely chopped
-
4–5 cups broccoli florets (about 1 head)
-
1 cup water
For Serving
-
Steamed rice
-
Sesame seeds (optional)
Instructions
Grab whatever bowl you want, size doesn’t really matter here. Dump in your cornstarch and water and whisk it aggressively until there’s absolutely zero lumps. I’m serious about the no lumps thing because one time I was lazy about it and ended up with these weird gloppy bits in my sauce that looked unappetizing. My son poked one with his fork and was like “mom what IS that.” Not my finest moment. I use a fork to whisk sometimes when I’m too lazy to dig the whisk out of the drawer.
Alright buckle up because this is where I screwed up repeatedly and I really wish someone had sat me down and explained this properly way back when. Your beef has these lines running through it. They’re muscle fibers. You absolutely have to cut ACROSS those lines. Perpendicular. Like imagine the lines are going this way, your knife needs to go that way. Not with them, not at some random diagonal, straight across.
This is the exciting part but also slightly terrifying if you’re not used to high heat cooking. Turn your burner all the way to high. Not medium-high, HIGH. Let that pan get screaming hot. You should see little wisps of smoke coming off it. My smoke detector has gone off twice from this, which was annoying both times, but that’s genuinely how hot it needs to be. Open a window if you have to.
Pour in your oil and swirl it around so the whole bottom of the pan is coated. Wait till it shimmers and looks kind of wavy. Then dump in your beef and spread it out in one layer. This next part is psychological torture—don’t touch it. Don’t stir it. Don’t poke it with your spatula. Just let it sit there for a full minute getting that gorgeous brown crust.
Throw in your chopped garlic and ginger and NOW you stir constantly. Like don’t stop stirring for the next 30 seconds. Your kitchen’s gonna smell so good right now that your family will magically appear asking when dinner’s ready. My kids can be upstairs with headphones on playing video games and somehow still smell this and come running down.
Pour in all the sauce you made plus the cup of water. First time I made this I was like “why am I adding water, this seems counterintuitive” but I promise it works. The water helps steam the broccoli so it cooks evenly and also keeps your sauce from getting too thick too quickly. Then pile in all your broccoli florets and give everything a big stir so it’s all coated.
Let everything bubble together for about a minute, maybe a minute and a half depending on how big you cut your broccoli. Keep stirring it every 10 seconds or so. You’ll literally watch the sauce go from thin and liquidy to thick and glossy. It’s honestly super satisfying to watch. The broccoli turns this vibrant bright green that looks so much better than takeout broccoli.
Take it off the heat immediately. Don’t let it sit there on the burner even if the heat’s off because the pan’s still hot and it’ll keep cooking. I learned this when I got distracted answering the door and came back to sauce that was so thick it was basically paste. Had to add like half a cup of water to fix it.
Spoon it over rice—I always start rice in my rice cooker before I even start prepping everything else so it’s done right when I need it. If you want to look fancy, sprinkle sesame seeds on top. First time I made this for my in-laws I went full restaurant mode with the sesame seeds and sliced green onions on top. My father-in-law legit asked if I ordered it and was just pretending I made it. I was like “no I actually made this!” He didn’t believe me until my husband confirmed it.
Notes
Never walk away from your wok once you start cooking—stir-frying moves FAST. Have everything prepped, measured, and ready to go before you even turn on the stove. I learned this the hard way when I burned my garlic while frantically chopping broccoli! If your sauce thickens too much, just splash in a little water and stir. Too thin? Let it bubble for another 30 seconds.
Here’s a game-changer for bright green broccoli: blanch those florets in boiling water for 40-60 seconds before you add them to the pan. Drain them super well, then toss them in. Your broccoli will be perfectly tender and stay that gorgeous green color. The biggest mistake I see people make is overcrowding the pan—give your beef some space or it’ll steam instead of getting that beautiful sear. Cook in batches if you need to!
- Prep Time: 10 minutes
- Cook Time: 10 minutes
- Category: Main Dish
- Method: Stir Fry
- Cuisine: Chinese-American
Ingredient List
Sauce
- 2 tablespoons cornstarch
- ¼ cup water
- 1 teaspoon sugar
- 1 tablespoon dark soy sauce
- 1½ tablespoons light soy sauce
- 1 tablespoon Chinese cooking wine (Shaoxing wine)
- ⅛ teaspoon Chinese five-spice powder
- 1 teaspoon sesame oil (optional)
- ⅛ teaspoon black pepper
Stir Fry
- 2 tablespoons neutral oil (vegetable or canola)
- 12 oz beef (flank, rump, or sirloin), thinly sliced
- 1 garlic clove, finely chopped
- 1 teaspoon fresh ginger, finely chopped
- 4–5 cups broccoli florets (about 1 head)
- 1 cup water
For Serving
- Steamed rice
- Sesame seeds (optional)
Why These Ingredients Work
Okay so I never understood cornstarch for the longest time. Like I knew it existed and saw my mom use it but didn’t get WHY. Then I actually read about it instead of just dumping it in blindly, and it’s basically creating this coating around the beef that traps all the moisture inside. That’s why your beef doesn’t turn into those dry crusty chunks that are impossible to chew. Mind was blown. And then—this is the cool part—after it protects the beef, it ALSO thickens your sauce into that glossy restaurant-style texture. Like it’s multitasking in your wok. I wish I could multitask that well.
The two types of soy sauce used to really annoy me. I’d be at the Asian grocery store like “why do I need TWO kinds of soy sauce, this is ridiculous, soy sauce is soy sauce.” But then I actually compared them side by side one day when I was bored, and they’re actually pretty different. Dark soy sauce is way thicker, almost sticky, and it’s got this subtle sweetness you don’t expect. That’s what makes your food look like it came from a restaurant with that deep gorgeous color. Light soy sauce is thinner, like regular soy sauce, and that’s where all the salty punch comes from.
I tried making this with just regular Kikkoman once because I didn’t want to go to the store for special ingredients. It was fine, definitely still edible and my family ate it without commenting, but something was missing. Can’t really explain it better than that. The flavor was a little flat maybe? Not as complex? I don’t know, food people would probably have the right words for it but I just know it’s better with both kinds.
Chinese five-spice is what my husband spent MONTHS trying to figure out. Every time I’d make this he’d eat it and go “what is that flavor, it’s driving me crazy.” He’d try to guess—cinnamon? Clove? Nutmeg? Something flowery? He literally went through my spice cabinet once trying to figure it out. Finally I took pity on him and showed him the jar. It’s star anise and cinnamon and cloves and Sichuan pepper and fennel all mixed together. You use such a tiny amount but it’s THE thing that makes this taste like real Chinese food instead of just “stuff I stir fried with soy sauce.”
Essential Tools and Equipment
- Large skillet or wok (if you have a wok use it, seriously, stop letting it collect dust in your cabinet)
- Sharp knife for slicing beef thinly
- Mixing bowls (at least 2)
- Whisk
- Wooden spoon or spatula for stirring
- Measuring spoons and cups
How To Make Chinese Beef and Broccoli
Step 1: Make the Sauce
Grab whatever bowl you want, size doesn’t really matter here. Dump in your cornstarch and water and whisk it aggressively until there’s absolutely zero lumps. I’m serious about the no lumps thing because one time I was lazy about it and ended up with these weird gloppy bits in my sauce that looked unappetizing. My son poked one with his fork and was like “mom what IS that.” Not my finest moment. I use a fork to whisk sometimes when I’m too lazy to dig the whisk out of the drawer.
Step 2: Prepare and Marinate the Beef
Alright buckle up because this is where I screwed up repeatedly and I really wish someone had sat me down and explained this properly way back when. Your beef has these lines running through it. They’re muscle fibers. You absolutely have to cut ACROSS those lines. Perpendicular. Like imagine the lines are going this way, your knife needs to go that way. Not with them, not at some random diagonal, straight across.
Step 3: Heat Your Pan and Cook the Beef
This is the exciting part but also slightly terrifying if you’re not used to high heat cooking. Turn your burner all the way to high. Not medium-high, HIGH. Let that pan get screaming hot. You should see little wisps of smoke coming off it. My smoke detector has gone off twice from this, which was annoying both times, but that’s genuinely how hot it needs to be. Open a window if you have to.
Pour in your oil and swirl it around so the whole bottom of the pan is coated. Wait till it shimmers and looks kind of wavy. Then dump in your beef and spread it out in one layer. This next part is psychological torture—don’t touch it. Don’t stir it. Don’t poke it with your spatula. Just let it sit there for a full minute getting that gorgeous brown crust.
Step 4: Add the Aromatics
Throw in your chopped garlic and ginger and NOW you stir constantly. Like don’t stop stirring for the next 30 seconds. Your kitchen’s gonna smell so good right now that your family will magically appear asking when dinner’s ready. My kids can be upstairs with headphones on playing video games and somehow still smell this and come running down.
Step 5: Add Sauce, Water, and Broccoli
Pour in all the sauce you made plus the cup of water. First time I made this I was like “why am I adding water, this seems counterintuitive” but I promise it works. The water helps steam the broccoli so it cooks evenly and also keeps your sauce from getting too thick too quickly. Then pile in all your broccoli florets and give everything a big stir so it’s all coated.
Step 6: Simmer Until Perfect
Let everything bubble together for about a minute, maybe a minute and a half depending on how big you cut your broccoli. Keep stirring it every 10 seconds or so. You’ll literally watch the sauce go from thin and liquidy to thick and glossy. It’s honestly super satisfying to watch. The broccoli turns this vibrant bright green that looks so much better than takeout broccoli.
Step 7: Finish and Serve
Take it off the heat immediately. Don’t let it sit there on the burner even if the heat’s off because the pan’s still hot and it’ll keep cooking. I learned this when I got distracted answering the door and came back to sauce that was so thick it was basically paste. Had to add like half a cup of water to fix it.

You Must Know
When you cut against the grain, you’re cutting the muscle fibers SHORT. Short fibers are tender and easy to chew. When you cut with the grain, the fibers are LONG and your jaw has to work really hard to break them down. That’s the whole difference between tender amazing beef and beef that makes your jaw tired. I watched a YouTube video about this that had like animations showing the muscle fibers and it finally clicked for me.
Personal Secret: My friend Jenny’s grandmother is from Taiwan and she taught me this trick that I will do forever now—put your beef in the freezer for 20 to 30 minutes before you slice it. Not frozen solid where you can’t cut it, just firm. It makes cutting thin even slices SO MUCH EASIER I can’t even explain it properly.
Pro Tips & Cooking Hacks
Once you turn that burner to high, you’re married to that wok. Don’t walk away to check your phone or throw laundry in the dryer or yell at your kids to turn their music down. I’ve burned the garlic at least four times—no wait, five times—because I thought “I can just grab this really quick” or “I’ll just answer this text super fast.” Nope. Burned garlic smells terrible and tastes worse. Learn from my mistakes. Stay at the stove.
Have absolutely everything prepped before you even turn on the heat. All your vegetables chopped, beef sliced, sauce mixed, measurements done, everything sitting there ready to go. They call this “mise en place” in French cooking which sounds super fancy but really just means “get your act together before you start.” I learned this the hard way while frantically trying to chop broccoli with one hand while stirring beef with the other and nearly cutting my finger off. Not recommended.
If your sauce gets too thick—like it’s happened to me when I spaced out or got distracted—just pour in some water and stir. I’ve added probably a quarter cup of water before and it was totally fine. Sauce came right back to the correct consistency. Too thin? Let it keep bubbling for another 30 seconds while stirring. Pretty forgiving actually.
Biggest mistake I made repeatedly when I started was cramming all the beef into the pan at once because I was lazy and didn’t want to cook it in batches. That’s fine if you have a massive commercial wok, but my regular home-sized skillet? It just steams the beef instead of getting that nice sear. The beef ends up kind of gray and bland instead of brown and flavorful. Now if it looks even slightly crowded, I do two batches. Takes maybe four extra minutes and makes such a huge difference in the final result.
Flavor Variations & Suggestions
My husband is obsessed with spicy food and puts hot sauce on literally everything including things that should not have hot sauce. So now I just add red pepper flakes directly to the sauce when I’m making it. Maybe half a teaspoon, sometimes more if he’s had a bad day and needs the spice endorphins. Kids get the regular version with no spice, he gets the spicy version, everyone’s happy and I don’t have to make two completely separate dinners.
When I’m trying to use up vegetables before they go bad—usually right before grocery shopping day—I’ll throw in whatever I’ve got. Bell peppers work great, they add nice color. Snap peas are really good. Thinly sliced carrots. One time I added baby corn because I had a random can in the pantry and it was actually pretty good. My kids don’t even notice they’re eating extra vegetables because everything’s coated in sauce and they’re too busy eating to analyze what’s in there.
One time I was feeling adventurous and added a tablespoon of oyster sauce because I’d seen it in another recipe somewhere. Made the whole thing even richer and more complex. My brother ate three helpings and kept asking “what’s different about this?” I told him and he was like “oyster sauce? Isn’t that weird?” I was like “just eat it and stop questioning.” But yeah, some people might think it’s too much. I personally loved it.
Make-Ahead Options
Most Sundays I do meal prep while watching Netflix and avoiding actually doing laundry. I’ll slice the beef, mix up the sauce, maybe even chop the broccoli, and stick everything in separate containers in the fridge. Then Tuesday night when I’m exhausted and don’t want to think, half the work’s already done. Dinner happens in 15 minutes and I feel like a meal planning genius.
But you really can’t make the whole thing ahead. Like you CAN, technically it’s possible, but it’s not going to be the same. Stir fry is all about that fresh-cooked texture and flavor. I tried meal prepping the entire dish once for my work lunches, cooked it all on Sunday, divided it up into containers. By Wednesday the broccoli was soggy, the beef wasn’t as tender, and the sauce had kind of soaked into everything making it mushy. It was edible but not GOOD if that makes sense.
Recipe Notes & Baker’s Tips
The whole light and dark soy sauce thing really genuinely does make a difference even though it seems excessive and bougie to have two different bottles. I’ve made this when I only had regular Kikkoman soy sauce, and it works, definitely still tastes like beef and broccoli, my family ate it without complaints. But there’s this subtle thing missing. The color’s lighter, more of a tan-brown instead of that rich dark brown. And the flavor’s a little one-dimensional maybe? Harder to describe but you can tell something’s not quite right.
Chinese five-spice is at most regular grocery stores now. Target has it, Kroger has it, Walmart has it. It’s usually in the spice aisle near the other Asian-ish spices. Little jar costs like four or five bucks and lasts literally forever because you use such tiny amounts. I’ve had the same jar for probably two years and it’s still half full. Don’t skip this ingredient though because it’s what makes this taste authentically Chinese instead of just “some stuff I stirred together with soy sauce.” Makes a massive difference.
Your sauce absolutely has to come to a real boil—like big bubbles, really bubbling—or the cornstarch won’t activate and thicken it properly. I learned this the embarrassing way when I was being too gentle with the heat because I was scared of burning things. Ended up with watery sauce that just kind of dripped off everything. My husband politely ate it but I could tell it wasn’t right. You need to see those bubbles. Let it really boil and the magic will happen.
Serving Suggestions
I always make jasmine rice because it’s fluffy and perfect for soaking up sauce. My rice cooker gets used almost every day. Sometimes I’ll make brown rice if I’m pretending to care about fiber and nutrition, but let’s be real, white rice tastes better with this. Just does. No judgment either way though, you do you.
My mom always serves egg rolls with this when she makes it. Sometimes hot and sour soup too if she’s feeling ambitious and wants to do a full Chinese dinner spread. I’m usually too lazy for all that but it does make it feel special when you have multiple things.
Quick cucumber salad is really good on the side and takes like three minutes while everything else is cooking. Just slice cucumbers thin, toss them with rice vinegar, a pinch of sugar, little bit of salt. Done. The cool crunchy cucumbers are a nice contrast to the hot savory beef and kind of refresh your palate between bites.
This is what I make on chaotic Tuesday nights when we get home late from soccer practice and everyone’s hungry. Also my Sunday meal prep go-to because it reheats pretty well for lunches. Also what I make when I’m craving Chinese food but don’t want to spend money on takeout or drive 20 minutes to pick it up. Basically I make this a lot. My kids probably could make it themselves at this point from watching me so many times but they pretend they don’t know how.
How to Store Your Beef and Broccoli
Leftovers go straight into whatever containers I have—sometimes actual meal prep containers, sometimes random Tupperware, once in a cleaned-out sour cream container because I ran out of everything else. They’re good in the fridge for three or four days. The beef usually releases some liquid as it sits. I think it’s just condensation or maybe the sauce separating a little? Either way it’s totally normal and not a big deal. Just drain it off before you heat everything up.
Best way to reheat is definitely in a skillet on the stove over medium heat. Add a splash of water to bring the sauce back to life and make it glossy again. Takes maybe five minutes and tastes almost as good as fresh. You can microwave it if you’re at work or don’t want to wash another pan—my husband takes this for lunch all the time and microwaves it at his office. He’s never complained but he’s also not super picky about texture.
I tried freezing this once and it was a disaster, don’t recommend it. The beef was fine after thawing, but the broccoli turned into this disgusting mushy watery mess that looked unappetizing and tasted worse. Like really sad and limp. If you absolutely need to freeze something for meal planning, freeze just the beef with the sauce and make fresh broccoli when you thaw and reheat it. Way better results that way.
Allergy Information
This has soy in it obviously from the soy sauce. Also sesame if you use the sesame oil, which I forget to add like half the time anyway so that one’s pretty optional. Good news is it’s naturally dairy-free! My friend Amanda is lactose intolerant and this is one of her favorite things I make when she comes over because she can actually eat it without feeling terrible later.
If you need gluten-free, just use tamari instead of regular soy sauce. Works exactly the same, tastes basically identical, costs a little more but not too bad. My sister does this for my nephew who has celiac and he can’t tell the difference. For lower sodium if you’re watching your salt intake, use low-sodium soy sauce and maybe use less of it. Won’t be quite as bold and flavorful but still good.
Questions I Get Asked A Lot
Why is my beef tough and chewy?
Like 90% of the time it’s because you cut it wrong. I know I’ve said this approximately seven thousand times already but cutting with the grain instead of against it is the number one reason beef ends up tough and annoying to eat. I did this so many times before I figured it out. Those muscle fibers running through the meat need to be cut SHORT. When you cut with the grain they stay long and your jaw has to work really hard to chew them.
Can I use frozen broccoli instead of fresh?
You technically CAN but I wouldn’t really recommend it unless you absolutely have to. Fresh broccoli is part of what makes this dish really good—that perfect crisp-tender texture where it’s cooked but still has a little crunch. I tried using frozen once when I was feeling really lazy and didn’t want to go to the store. It was… fine? Edible? But definitely softer and kind of watery and just not the same.
My sauce is too thin – what did I do wrong?
The sauce needs to hit a full rolling boil for the cornstarch to activate. Like really bubbling, not just simmering gently. If it’s still thin after cooking, just let it keep bubbling for another minute while you stir it. I’ve also found that if you don’t whisk the cornstarch and water together really thoroughly at the beginning, you get these little clumps that don’t dissolve and don’t thicken right.
What’s the difference between light and dark soy sauce?
This confused me for literally years before I finally looked it up properly. Light soy sauce is thinner, saltier, and that’s where your main seasoning flavor comes from. It’s what makes things taste good. Dark soy sauce is thicker, almost syrup-like, and it’s got this subtle sweetness plus it’s what gives food that gorgeous deep dark brown color that looks like restaurant food.
💬 Tried this recipe? Leave a comment and rating below! I’d love to hear how your beef and broccoli turned out and if you added any fun twists!
