Main Courses
This beef and broccoli over rice recipe delivers restaurant-quality results with a wok-sizzled sauce that coats tender beef and crisp-tender broccoli in a glossy, savory glaze. The secret lies in high-heat stir-frying that develops deep caramelized flavors while keeping the beef perfectly tender—not tough or chewy.
I’ve perfected this dish over years of testing, ensuring every component comes together harmoniously for a balanced, satisfying meal that’s both elegant and approachable.
The foundation starts with chewy, perfectly cooked rice—neither mushy nor dry—paired with beef cut into thin strips that sear quickly in the wok. Broccoli gets just the right treatment: blanched for brightness, then tossed in the sauce to maintain its vibrant green color and satisfying crunch.
The sauce, a blend of soy, ginger, garlic, and a touch of brown sugar, creates that signature sticky-sweet balance that makes this dish universally loved.
What sets this recipe apart is the cohesive plating: fluffy rice as the base, beef and broccoli arranged artistically on top, and sauce drizzled generously over everything. The result is a dish that’s visually appealing, packed with texture, and bursting with flavor in every bite.
Whether you’re serving it for a weeknight dinner or a special occasion, this recipe delivers restaurant-quality perfection without the fuss.
Optional variations let you customize the sauce—swap in teriyaki for a sweeter profile or add a splash of sesame oil for nutty depth. Garnish with sliced green onions or sesame seeds for extra freshness and crunch.
Here’s how to make it, step by step, for a dish that’s as foolproof as it is delicious.
Ingredients for beef and broccoli over rice
Restaurant-quality beef and broccoli starts with these 14 ingredients—simple but transformative.
| Ingredient | Amount | Notes |
|---|---|---|
| Flank Steak 🥩 | 1 ½ lb | Thinly sliced against grain |
| Fresh Broccoli Crowns 🥦 | 2 cups | Cut into florets, stems peeled |
| Long-Grain White Rice 🍚 | 1 ½ cups | Uncooked, jasmine preferred |
| Low-Sodium Soy Sauce 🍶 | ½ cup | For balanced flavor |
| Sesame Oil 🫒 | 2 tbsp | Toasted, for aroma |
| Fresh Ginger 🌿 | 2 tbsp | Finely grated, aromatic |
| Garlic Cloves 🧄 | 6 cloves | Minced, pungent |
| Brown Sugar 🍯 | 2 tbsp | Light, for caramelization |
| Cornstarch 🌾 | 1 tbsp | For sauce thickening |
| Vegetable Oil 🫒 | 2 tbsp | High smoke point |
| Green Onions 🧅 | 4 whole | Sliced, for garnish |
| Sesame Seeds 🌱 | 1 tbsp | Toasted, for crunch |
| Salt 🧂 | 1 tsp | Kosher, for seasoning |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
The beef is non-negotiable here. Flank steak is ideal—lean, flavorful, and perfect for slicing thin against the grain. Costco or Whole Foods carry excellent cuts, but any butcher will slice it for you if you ask. Look for bright red color and good marbling; avoid anything gray or overly fatty. Broccoli should be vibrant green with tight florets—skip the yellowing stems. For rice, jasmine or basmati gives that chewy texture, but long-grain white works too. The sauce ingredients? Grab low-sodium soy sauce for better flavor control, and toast your sesame oil in a dry pan for 30 seconds before using—trust me on this.
No flank steak? Sirloin or ribeye works in a pinch, but slice it thinner. Short on broccoli? Snow peas or bok choy add texture without overpowering. The sauce can be made ahead—just store it separately and combine before tossing with the beef. Need more depth? Swap half the soy sauce for oyster sauce (vegetarian version if needed). The cornstarch is key for that glossy finish—don't skip it. For extra umami, add 1 tsp fish sauce (or soy sauce if vegetarian). And if you're feeling fancy, toasted sesame oil in the final drizzle elevates everything.
Rice keeps for 4-5 days in the fridge—reheat with a splash of water. The beef and broccoli? Best eaten fresh, but the sauce reheats beautifully. Store components separately to prevent sogginess. For meal prep, cook the rice and sauce ahead, then stir-fry the beef and broccoli fresh. Garnishes? Toast the sesame seeds in a dry pan for 30 seconds—they'll smell amazing and add crunch. Leftovers? Freeze the beef and broccoli mix for up to 3 months; just thaw and reheat gently.
Why You'll Love This Recipe
- One-Pan Magic: I swear by this recipe when I’m too tired to scrub dishes—just sear the flank steak, toss in the broccoli, and let the soy sauce and sesame oil work their magic. The rice cooks while everything else simmers, and suddenly, you’ve got a restaurant-quality meal with one pan to wash.
- Umami Bomb: That first bite of tender, caramelized beef with the bright crunch of broccoli? The low-sodium soy sauce gives it a deep, savory punch without the salt overload, and a drizzle of sesame oil ties it all together. It’s the kind of flavor that makes you forget you’re eating something simple.
- Weeknight Workhorse: Between us, this is my go-to for busy nights when I need to feed the family fast. Double the batch on Sunday, and you’ve got lunch ready for the next two days—no reheating drama, just reheat-and-serve perfection. (Yes, even on a Tuesday night.)
- Budget-Friendly Feast: Flank steak stretches further than you’d think, and broccoli is one of the most affordable veggies out there. A single batch feeds four for under $15, and the leftovers? Just as good cold the next day for packed lunches. Smart, satisfying, and guilt-free.
Step-by-step instructions for beef and broccoli over rice
Here's how to nail this classic dish—juicy beef, crisp-tender broccoli, and chewy rice that holds up perfectly.
Cook the Jasmine Rice to Ideal Texture
Rinse the 1.5 cups long-grain white rice under cold water until the water runs clear. This removes excess starch that would make the rice gummy. Drain well in a fine-mesh strainer and transfer to a pot with 2.5 cups water (that's a 1:1.66 rice-to-water ratio for jasmine). Bring to a boil over medium-high heat, then reduce to a simmer, cover tightly, and cook for 15 minutes.
Here's the trick: After 15 minutes, turn off the heat but leave the rice covered for another 10 minutes. This resting period lets the steam redistribute, resulting in perfectly chewy grains that won't turn mushy under the sauce. Fluff with a fork before serving—don't stir it while hot or you'll break the grains.
Marinate and Sear the Flank Steak
Slice the 1.5 lb flank steak thinly against the grain into ¼-inch strips. In a bowl, combine the steak with 0.5 cup low-sodium soy sauce, 2 tbsp brown sugar, 2 tbsp sesame oil, 2 tbsp finely grated fresh ginger, 6 minced garlic cloves, 1 tsp salt, and 0.5 tsp black pepper. Let it marinate for at least 20 minutes—this ensures tender beef with deep flavor penetration.
Heat a wok or large skillet over high heat until smoking, then add 2 tbsp vegetable oil. Working in batches to avoid crowding, add the marinated steak and sear for 1-2 minutes per side until deep brown and slightly charred. Remove and set aside—don't overcook or the beef will turn tough. The steak should still be slightly pink in the center when done.
Stir-Fry Broccoli to Crisp-Tender Perfection
In the same wok, add another 1 tbsp vegetable oil and increase heat to high. Add the 2 cups fresh broccoli crowns (cut into even florets) and stir-fry for 3-4 minutes until the edges turn bright green and the stems soften slightly. You want them to retain a little bite—overcooking turns broccoli into mush.
Push the broccoli to one side of the wok and add the reserved steak back in. Pour in 0.25 cup low-sodium soy sauce and 1 tbsp cornstarch mixed with 2 tbsp water. Stir quickly to coat everything evenly—this creates a glossy, clinging sauce. Cook for 1-2 minutes until the sauce thickens slightly and clings to the beef and broccoli.
Finish with Aromatics and Garnish
Add the remaining 0.25 cup low-sodium soy sauce and 1 tbsp brown sugar to the wok. Stir well and let it simmer for 1 minute until the sauce reduces slightly and becomes syrupy. The aroma should be rich and slightly caramelized—this is your signal that the flavors have melded perfectly.
Turn off the heat and stir in the 4 sliced green onions and 1 tbsp toasted sesame seeds. Taste and adjust seasoning if needed—you might want to add a splash more soy sauce or a pinch of sugar to balance the flavors. Serve the beef and broccoli immediately over the chewy jasmine rice, garnished with extra sesame seeds for texture contrast.
Pro Tips For Making Beef And Broccoli Over Rice
- Slice Against the Grain: Flank steak fights you if you cut it wrong—thin slices perpendicular to the muscle fibers keep it tender. I used to overlook this and ended up with chewy, sad beef. Grab a sharp knife, hold the steak steady, and slice at a 45-degree angle for bite-sized pieces that stay juicy.
- Blanch Broccoli First: Toss whole broccoli crowns in boiling water for 30 seconds before stir-frying—this softens them just enough to finish fast without turning mushy. Sounds counterintuitive, but it cuts your cooking time by half and keeps the florets intact. (Yes, even if you’re impatient like me.)
- Don’t Crowd the Pan: Stir-fry the beef in batches if your pan’s smaller than 12 inches—overloading steams the meat instead of searing it. I learned this after slopping soy sauce into a soggy mess. A quick 2-minute rest under foil between batches keeps everything crisp.
- Toast the Rice Separately: Cook the rice al dente (just firm) and spread it on a tray to dry for 10 minutes before mixing in. This prevents a gummy final dish—no one wants gluey rice ruining their perfect beef and broccoli. (Pro move: Use a bit of sesame oil in the rice while toasting for extra aroma.)
Serving suggestions for leftovers
Rice Presentation
Serve the beef and broccoli over steamed jasmine rice in a wide, shallow bowl to showcase the dish's vibrant colors. For an elegant touch, use a rice scoop to create a slight well in the center of the rice—this prevents the sauce from pooling and keeps the presentation clean.
I like to arrange the beef in a circular pattern around the edges, with broccoli florets nestled in the center, creating a visually appealing contrast. 🍚
Sauce Drizzle Technique
Before serving, drizzle the wok-sizzled sauce generously over the beef and broccoli using a small spoon or squeeze bottle. This not only enhances flavor but also adds a glossy finish that makes the dish look restaurant-worthy.
For extra drama, swirl the sauce in a circular motion with chopsticks or a spoon to create an artistic pattern on the rice. A light sprinkle of toasted sesame seeds adds crunch and visual appeal.
Garnish Like a Pro
Fresh green onions sliced into ½-inch pieces add a pop of color and brightness. Scatter them evenly over the dish, with a few pieces fanned out for a decorative touch. For added texture, sprinkle toasted sesame seeds or crushed peanuts (if you prefer a nutty twist) on top.
I also like to add a few cilantro leaves for a fresh, herbaceous note that balances the richness of the beef and sauce. 🌿
Family-Style Serving
For a communal dining experience, serve the beef and broccoli in a large, shallow platter with the rice in a separate bowl. Place the platter at the center of the table so everyone can help themselves.
Use small serving spoons to distribute the sauce and toppings, encouraging guests to customize their portions. This approach makes the dish feel special while keeping it interactive and fun. 🍽️
Leftovers Strategy
If you have leftovers, store the beef and broccoli mixture separately from the rice in airtight containers to prevent sogginess. Reheat the beef and broccoli in a skillet over medium heat with a splash of water or soy sauce to restore moisture and crispness.
Serve over freshly cooked rice to maintain the perfect texture. For a quick fix, assemble the dish in a microwave-safe bowl and heat for 1-2 minutes, then garnish with fresh green onions before serving.
Nutrition facts
Frequently asked questions
Why does the beef need to be sliced against the grain?
Slicing flank steak against the grain ensures tender, bite-sized pieces that cook evenly and melt in your mouth. The grain runs along the muscle fibers, so cutting perpendicular shortens them, preventing chewiness. For this recipe, aim for ¼-inch strips—any thicker and the beef will turn tough during stir-frying.
Can I use frozen broccoli instead of fresh?
Fresh broccoli gives the best texture and color, but frozen florets work in a pinch. Thaw and drain them completely, then pat dry with a paper towel to remove excess moisture—this prevents a watery sauce. For extra brightness, add ½ tsp baking soda to the blanching water (rinse well after).
How do I prevent the rice from getting mushy under the sauce?
Cook the rice slightly underdone (14 minutes instead of 15) and let it steam covered for 10 minutes off heat. This creates chewy grains that hold up to the sauce. Also, serve the beef and broccoli immediately over the rice—don't let them sit together too long, or the steam will soften the rice further.
What's the best way to make this dish in a standard skillet?
Use a 12-inch cast iron skillet on high heat to mimic wok searing. Work in two batches for the beef to avoid crowding, and use 1 tbsp oil per batch. Stir-fry the broccoli in the same pan after removing the beef—its residual heat will help maintain high temperatures. The sauce will still thicken beautifully, though it may take 30 seconds extra to coat everything.
Can I make this gluten-free?
Yes! Replace the soy sauce with tamari or coconut aminos (use ⅓ more since they're less salty). For extra umami, add 1 tsp gluten-free fish sauce or 1 tbsp gluten-free oyster sauce. The cornstarch can stay as-is since it's naturally gluten-free. All other ingredients are already safe for gluten-free diets.
