Restaurant-Style Beef and Broccoli Stir Fry

Posted on

Melissa Burns

beef and broccoli stir fry - featured image

Three years ago, I was standing in my kitchen at 6:45 PM on a Tuesday, feeling that specific brand of exhaustion that comes from working a full day and still having a house full of hungry humans. My kids were hovering. My husband was already complaining about being “starving.” And I had exactly zero energy to think, let alone cook. So, I did what we all do. I opened the food delivery app. I scrolled past the sushi. I scrolled past the burgers. And I landed on the same Chinese takeout menu I’d been ordering from for five years.

I was about to click “checkout” when my six-year-old looked up from his iPad and said, “Mom, why don’t we just make that beef and broccoli thing?”

I laughed. “We don’t make that thing, buddy. We order it. It’s too hard to make at home.”

He shrugged and went back to his show. But that comment stuck with me. It wasn’t that it was hard; it was that I’d never actually tried to make it *well*. I’d made stir fries before, but they were usually a sad mix of limp vegetables and rubbery steak, drowning in a sauce that tasted like soy sauce and regret. I wanted that glossy, tender, restaurant-quality experience without the $25 delivery fee or the wait.

So, I spent the next month experimenting. I tested different cuts of beef. I figured out how to get broccoli that actually stayed crisp-tender instead of mushy. I cracked the code on the sauce thickness. And last week, I finally nailed it. I made a batch of this Restaurant-Style Beef and Broccoli Stir Fry and set it on the table. No takeout boxes. No waiting. Just fresh, hot, incredible food.

My kids didn’t even ask if we were ordering pizza. They just dug in. And honestly? This is the best weeknight dinner win I’ve had in a long time. If you’re tired of the same old rotation, this recipe is going to change your life. It’s faster than delivery, cheaper than takeout, and tastes better than 90% of the local Chinese restaurants out there.

Why You’ll Love This Beef and Broccoli Recipe

There are about ten reasons I keep making this beef and broccoli stir fry, but here are the big ones that will keep you coming back to the stove.

Tender Beef Every Single Time — This is the holy grail. Most home cooks get chewy, tough beef. I use a simple cornstarch marinade that creates a protective barrier, keeping the meat juicy and velvety. It’s the same technique Chinese restaurants use. I’ve tested this with flank steak, sirloin, and skirt steak, and the cornstarch trick works with all of them.

Crisp-Tender Broccoli — Nobody likes soggy, overcooked broccoli. I’ve found the perfect balance of steaming and stir-frying so the florets stay bright green and have a nice crunch. It’s the kind of vegetable side dish that actually gets eaten.

Sauce That Clings — The sauce is thick, glossy, and sticks to every piece of beef and broccoli. It’s not watery. It’s not too sweet. It’s savory, slightly spicy, and deeply flavorful. I’ve made this sauce for everything from chicken to tofu, but beef is definitely the king here.

Ready in 20 Minutes — From chopping to plating, this takes less time than it takes to wait for a delivery driver to ring your doorbell. I make this on weeknights when I’m running on fumes, and it never fails to impress.

Budget-Friendly — You can feed four people for under $20, depending on where you shop. That’s a fraction of what you’d pay for the same amount of food at a restaurant. Plus, you control the sodium and sugar levels.

This is my go-to when I want to feel like a gourmet chef without the stress. It’s reliable, delicious, and makes everyone happy.

Ingredients You’ll Need

Here’s the best part: you probably have most of the sauce ingredients already. The key is getting the beef right and balancing the flavors. I’m particular about three things here, and I’ll tell you exactly why.

For the Beef

Flank steak or skirt steak (1.5 pounds / 680g) — These cuts are flavorful and cook quickly. They’re also more affordable than ribeye. Cut them against the grain, or they’ll be tough. I buy flank steak because it’s lean and takes the marinade well.

Soy sauce (2 tablespoons) — Use regular soy sauce, not low-sodium, for better flavor. If you’re watching salt, you can use low-sodium, but you might need to add a pinch more later.

Chinese cooking wine (Shaoxing wine) (1 tablespoon) — This adds depth. If you can’t find it, dry sherry works. If you’re cooking for kids who don’t eat alcohol, you can skip it or use a little extra broth. It’s not essential, but it makes a difference.

Cornstarch (1 tablespoon) — This is the secret weapon. It velvets the beef, keeping it tender. Don’t skip it.

Vegetable oil (1 tablespoon) — For marinating. Helps coat the meat evenly.

Black pepper (½ teaspoon) — Freshly cracked is best.

For the Sauce

beef and broccoli stir fry preparation steps

Low-sodium chicken broth (½ cup / 120ml) — Adds body to the sauce. Beef broth works too, but chicken is milder and lets the other flavors shine.

Oyster sauce (2 tablespoons) — This is non-negotiable for that authentic restaurant taste. It’s savory, slightly sweet, and umami-rich. If you can’t find it, hoisin sauce is a decent substitute, but it’s sweeter.

Light soy sauce (1 tablespoon) — Adds saltiness without overpowering. If you only have regular soy sauce, use less (about ½ tablespoon).

Dark soy sauce (1 teaspoon) — This is for color, not flavor. It gives that deep, glossy brown look. If you don’t have it, skip it, but the sauce will be lighter.

White sugar (1 tablespoon) — Balances the saltiness. Don’t worry, it doesn’t make it sweet. It just rounds out the flavors.

Water (2 tablespoons) — Thins the sauce slightly so it coats the beef without being too thick.

Cornstarch (1 teaspoon) — Mixed with water to make a slurry. This thickens the sauce as it simmers.

Red pepper flakes (½ teaspoon) — Optional, but adds a nice kick. Adjust to your spice tolerance.

For the Stir Fry

Broccoli (2 large heads, cut into florets) — Fresh is best. Frozen broccoli works in a pinch, but it releases too much water and gets mushy. I buy fresh broccoli florets to save time on cutting.

Garlic (4 cloves, minced) — Yes, four cloves. Garlic is the star of this dish. Don’t be shy.

Fresh ginger (1 tablespoon, grated) — Fresh ginger adds brightness. Ground ginger won’t work here. If you’re lazy, you can skip it, but it’s really good.

Vegetable oil (2 tablespoons) — For cooking. I use a neutral oil with a high smoke point.

Sesame oil (1 teaspoon) — Added at the end for aroma. Don’t cook with it; it burns easily. Just drizzle it in at the end.

Equipment Needed

You don’t need fancy equipment for this. Here’s what I actually use.

Large wok or skillet — A 12-inch wok is ideal because it has high sides and distributes heat evenly. I use a carbon steel wok, but a large cast-iron skillet or stainless steel pan works fine too. The key is having enough surface area so the beef sears instead of steams.

Sharp knife — For slicing the beef thinly and cutting the broccoli. A dull knife will tear the meat and make it hard to slice against the grain.

Cutting board — Any size works. I use a large one to fit all the prep.

Mixing bowls — For marinating the beef and mixing the sauce. Two small bowls and one medium bowl work well.

Wooden spoon or spatula — For stirring. A silicone spatula is good for scraping the bottom of the pan.

Measuring cups and spoons — Standard stuff. I keep a set on my counter for quick access.

Colander — For rinsing the broccoli if needed. Or just use the sink.

Small bowl — For mixing the cornstarch slurry.

Tongs — Optional, but helpful for flipping the beef quickly.

How to Make It: Step-by-Step

Alright, let’s make this! I’m walking you through exactly how I do it, including the little tricks I’ve picked up.

Step 1: Slice and Marinate the Beef (5 minutes)

Take your flank steak or skirt steak and slice it against the grain into thin strips. This is crucial. Cutting against the grain shortens the muscle fibers, making the beef tender. If you cut with the grain, it’ll be chewy. Place the beef in a bowl and add soy sauce, cooking wine, cornstarch, vegetable oil, and black pepper. Mix well until the beef is coated. Let it marinate for at least 15 minutes, or up to an hour in the fridge. This step is non-negotiable for tender beef.

Step 2: Make the Sauce (2 minutes)

In a small bowl, whisk together the chicken broth, oyster sauce, light soy sauce, dark soy sauce, sugar, water, red pepper flakes, and 1 teaspoon of cornstarch. Whisk until the sugar and cornstarch are fully dissolved. Set aside. The sauce should be thin and liquid at this point. It will thicken as it cooks.

Step 3: Prep the Broccoli (5 minutes)

Cut the broccoli into bite-sized florets. If the stems are thick, peel the outer layer and slice them into thin rounds. They’re edible and delicious. If you’re using a large head, you might need to cut the florets in half. Set aside. I like to keep the broccoli separate from the beef prep so I can move quickly when it’s time to cook.

Step 4: Sear the Beef (3-4 minutes)

Heat a large wok or skillet over high heat. Add 1 tablespoon of vegetable oil. Once the oil is shimmering and hot, add the beef in a single layer. Don’t overcrowd the pan. If your pan is small, cook the beef in two batches. Let the beef sear for 1-2 minutes without moving it, then flip and cook for another 1-2 minutes until browned but still slightly pink in the middle. Remove the beef from the pan and set aside on a plate. Don’t worry if it looks undercooked; it will finish cooking later.

Step 5: Cook the Broccoli (3-4 minutes)

Wipe out the pan if needed, or just leave it. Add another tablespoon of oil if the pan looks dry. Add the broccoli and stir-fry for 2 minutes. Then, add 2 tablespoons of water and cover the pan with a lid for 1 minute. This steams the broccoli slightly, making it tender-crisp. Uncover and stir-fry for another minute to evaporate the water. The broccoli should be bright green and crisp-tender.

Step 6: Combine and Sauce (2 minutes)

Add the cooked beef back to the pan with the broccoli. Add the minced garlic and grated ginger. Stir-fry for 30 seconds until fragrant. Pour the sauce mixture over the beef and broccoli. Stir constantly. The sauce will thicken quickly, within about 30-60 seconds. Once the sauce is glossy and coats everything, remove from heat. Drizzle with sesame oil and give it one final stir.

Step 7: Serve

Serve immediately over steamed jasmine rice or fried rice. Garnish with sesame seeds and sliced green onions if you have them. The beef and broccoli should be glossy, tender, and coated in a savory, slightly sweet sauce.

Expert Tips & Tricks

Here’s everything I’ve learned from making this dozens of times. These tips will save you from my mistakes.

Slice Against the Grain — I cannot stress this enough. Look at the direction the muscle fibers run on the steak, and cut perpendicular to them. If you cut parallel, you’ll get chewy beef. It’s a game-changer.

High Heat is Key — Stir-frying requires high heat to sear the beef quickly. If your pan isn’t hot enough, the beef will steam and get tough. Get that pan smoking hot before adding the meat.

Don’t Overcrowd the Pan — If you put too much beef in at once, the temperature drops, and the beef steams instead of sears. Cook in batches if necessary. It’s worth the extra minute.

Cornstarch Slurry — Make sure you whisk the cornstarch into the sauce well before adding it to the pan. If there are clumps, you’ll get lumpy sauce. And add the sauce to the pan gradually if you want to control the thickness.

Fresh Ginger and Garlic — Don’t use jarred garlic or powdered ginger. The flavors are completely different. Fresh adds brightness and aroma that bottled versions can’t match.

Velveting Technique — The cornstarch marinade is called “velveting.” It’s a Chinese cooking technique that keeps meat tender. It’s simple, but it makes a huge difference in texture.

Serve with Jasmine Rice — The sauce is delicious, and it needs something to soak it up. Steamed jasmine rice is the classic pairing. It’s slightly sticky and fragrant, perfect for this dish.

Variations & Substitutions

Once you’ve nailed the basic version, here’s how you can mix it up. I’ve tried all of these.

Chicken Version — Substitute chicken breast or thighs for the beef. Slice thinly and marinate the same way. Cook quickly, as chicken cooks faster than beef. This is a great alternative if you want something leaner.

Tofu Version — Use extra-firm tofu, pressed and cubed. Toss in cornstarch and pan-fry until crispy before adding back at the end. This is a delicious vegetarian option.

Shrimp Version — Use large shrimp, peeled and deveined. Cook quickly, just 2-3 minutes, and add back at the end. Shrimp pairs well with the sauce.

Vegetable Add-Ins — Add sliced bell peppers, snap peas, or carrots to the stir fry. Add them with the broccoli. They add color and crunch.

Spicy Version — Add 1 tablespoon of chili garlic sauce or sriracha to the sauce. Or add more red pepper flakes. If you like heat, this is the way to go.

Sauce Substitutions — If you can’t find oyster sauce, use hoisin sauce or a mix of soy sauce and a little honey. It won’t be exactly the same, but it’ll still be tasty.

Serving & Storage

How to Serve — I usually serve this straight from the skillet at the dinner table. It looks rustic and stays warm. But here are other ways I’ve enjoyed it:

Side Dishes — Steamed jasmine rice is essential. A simple cucumber salad with rice vinegar and sesame oil is refreshing. Or some chicken caesar wraps if you want a different meal for the kids.

Toppings Bar — When I have guests, I put out: sesame seeds, sliced green onions, chili crisp, and extra soy sauce. Everyone customizes their bowl.

Wine Pairing — Not a wine expert, but my wine-snob friend says a light Pinot Noir or a crisp Riesling works great with this.

Refrigerator — Store in an airtight container for up to 3 days. The beef might get slightly tougher, but it’s still good.

Reheating — Best method: Add to a skillet with a splash of water or broth over medium heat. Stir until heated through. Microwave works too, but add a splash of liquid to prevent drying out.

Freezing — This doesn’t freeze well. The beef gets tough and the broccoli gets mushy. Make it fresh.

Pro tip — If you’re meal prepping, store the sauce separately and combine when reheating. This keeps the beef tender.

Nutrition Information

I’m not a nutritionist, but here’s the breakdown if you’re tracking.

Per Serving (based on 4 servings):

– Calories: 350
– Protein: 30g
– Carbs: 15g
– Fiber: 3g
– Sugar: 6g
– Fat: 18g
– Saturated Fat: 5g
– Cholesterol: 75mg
– Sodium: 600mg
– Calcium: 60mg

What’s Good — High in protein from the beef. Broccoli adds fiber and vitamins. The sauce is flavorful but not overly sugary.

What to Know — Higher in sodium from the soy sauce and oyster sauce. Use low-sodium versions to reduce. Contains gluten (soy sauce, oyster sauce). Can be made gluten-free with tamari and gluten-free oyster sauce.

My Take — Look, this is a savory, rich dish. It’s not a diet food, but it’s balanced. The protein keeps you full, and the vegetables add nutrition. When I want to make it lighter, I use less oil and more broccoli. But usually? I just enjoy it.

Final Thoughts

So that’s my go-to Restaurant-Style Beef and Broccoli Stir Fry! I’ve probably talked your ear off at this point, but when you make a recipe this often, you have a lot to say about it.

This has saved weeknight dinners more times than I can count. It’s my answer to “what’s for dinner” when I’m tired, don’t want takeout, and still want something that tastes really good. My kids are happy, my husband’s happy, and I’m happy because I’m not stressed about cooking.

Make it yours! Try different add-ins, swap in your favorite vegetables, adjust the spice level. The best recipes are the ones you adapt to your family’s tastes.

If you make this, drop a comment and let me know what you think! I love hearing how recipes turn out in your kitchen. And if something doesn’t work, tell me that too—I’m here to help troubleshoot.

Happy cooking! And I hope your kitchen smells half as good as mine does right now.

Frequently Asked Questions

Can I use flank steak instead of skirt steak?

Yes! Flank steak is actually my preferred cut because it’s lean and slices easily. Skirt steak is also great but can be tougher if not sliced correctly. Both work well with this marinade.

Why did my beef turn out tough?

Usually, this happens because you didn’t slice against the grain, or you didn’t use the cornstarch marinade. Cutting against the grain shortens the fibers, making it tender. The cornstarch creates a protective layer. Also, don’t overcook the beef. It cooks quickly.

Can I make this ahead of time?

You can prep the beef and sauce ahead of time. Slice the beef and marinate it, then store in the fridge. Mix the sauce and store it. Cook the beef and broccoli fresh when you’re ready to eat. This saves time but doesn’t save the actual cooking.

What if I don’t have oyster sauce?

You can use hoisin sauce, but it’s sweeter. Or use a mix of soy sauce and a little honey. It won’t be exactly the same, but it’ll still be delicious. Oyster sauce adds a specific umami flavor that’s hard to replicate.

Can I use frozen broccoli?

I don’t recommend it. Frozen broccoli releases too much water and gets mushy. Fresh broccoli is much better. If you must use frozen, thaw it completely and squeeze out excess water before cooking.

How do I get the sauce to thicken?

The cornstarch in the sauce thickens it as it heats. Make sure you whisk the cornstarch into the sauce well before adding it to the pan. If it’s too thin, let it simmer longer. If it’s too thick, add a splash of water.

Can I double this recipe?

Absolutely! Double everything and use your biggest wok or skillet. You might need to cook the beef in batches to avoid overcrowding. The cooking times stay the same.

Pin This Recipe!

beef and broccoli stir fry recipe

Print
clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon
beef and broccoli stir fry - featured image

Restaurant-Style Beef and Broccoli Stir Fry


  • Author: Thea
  • Total Time: 20 minutes
  • Yield: 4 servings 1x

Description

A quick, budget-friendly weeknight dinner that replicates the tender beef and crisp-tender broccoli of your favorite Chinese takeout, ready in just 20 minutes.


Ingredients

Scale
  • 1.5 pounds flank steak or skirt steak, sliced against the grain into thin strips
  • 2 tablespoons soy sauce
  • 1 tablespoon Chinese cooking wine (Shaoxing wine) or dry sherry
  • 1 tablespoon cornstarch (for marinade)
  • 1 tablespoon vegetable oil (for marinade)
  • ½ teaspoon black pepper
  • ½ cup low-sodium chicken broth
  • 2 tablespoons oyster sauce
  • 1 tablespoon light soy sauce
  • 1 teaspoon dark soy sauce
  • 1 tablespoon white sugar
  • 2 tablespoons water (for sauce)
  • 1 teaspoon cornstarch (for sauce slurry)
  • ½ teaspoon red pepper flakes (optional)
  • 2 large heads broccoli, cut into florets
  • 4 cloves garlic, minced
  • 1 tablespoon fresh ginger, grated
  • 2 tablespoons vegetable oil (for cooking)
  • 1 teaspoon sesame oil

Instructions

  1. Slice the beef against the grain into thin strips. In a bowl, combine beef with soy sauce, cooking wine, 1 tablespoon cornstarch, 1 tablespoon vegetable oil, and black pepper. Mix well and marinate for at least 15 minutes.
  2. In a small bowl, whisk together chicken broth, oyster sauce, light soy sauce, dark soy sauce, sugar, 2 tablespoons water, red pepper flakes, and 1 teaspoon cornstarch until dissolved. Set aside.
  3. Cut broccoli into bite-sized florets. If stems are thick, peel and slice them thinly. Set aside.
  4. Heat a large wok or skillet over high heat. Add 1 tablespoon vegetable oil. Once shimmering, add beef in a single layer (cook in batches if necessary). Sear for 1-2 minutes per side until browned but slightly pink inside. Remove beef and set aside.
  5. Wipe pan if needed. Add another tablespoon of oil if dry. Add broccoli and stir-fry for 2 minutes. Add 2 tablespoons water, cover, and steam for 1 minute. Uncover and stir-fry for another minute until crisp-tender.
  6. Add cooked beef back to the pan with broccoli. Add minced garlic and grated ginger; stir-fry for 30 seconds until fragrant.
  7. Pour sauce mixture over beef and broccoli. Stir constantly until sauce thickens and becomes glossy (30-60 seconds).
  8. Remove from heat, drizzle with sesame oil, and stir one final time. Serve immediately over steamed jasmine rice.

Notes

Slice beef against the grain to ensure tenderness. Use high heat for proper searing. Do not overcrowd the pan. Fresh ginger and garlic are essential for flavor. This dish does not freeze well; the beef may become tough and broccoli mushy. Store leftovers in an airtight container in the refrigerator for up to 3 days.

  • Prep Time: 12 minutes
  • Cook Time: 8 minutes
  • Category: Main Course
  • Cuisine: Chinese

Nutrition

  • Serving Size: 1/4 of the recipe
  • Calories: 350
  • Sugar: 6
  • Sodium: 600
  • Fat: 18
  • Saturated Fat: 5
  • Carbohydrates: 15
  • Fiber: 3
  • Protein: 30

Keywords: beef and broccoli, stir fry, chinese food, weeknight dinner, quick meals, restaurant style, easy recipe, high protein

You might also like these recipes

Leave a Comment

Recipe rating