Soups & Stews
This beef and gai lan recipe delivers the perfect balance of tender beef and crisp-tender greens in a single wok, where umami-rich flavors meet silky textures.
The secret lies in high-heat searing for the beef followed by a quick stir-fry that preserves both the meat's juiciness and the gai lan's natural crunch. I developed this dish after years of experimenting with stir-fry techniques, and it consistently impresses even the most skeptical eaters.
The beauty of this recipe is its adaptability—whether you're recreating a classic Cantonese stir-fry or modernizing it with bold seasonings, the technique remains the same.
Thinly sliced beef gets marinated in a simple sauce before being wok-seared to medium doneness, then finished with gai lan that cooks just enough to soften its tough stems while keeping the leaves vibrant. The result is a dish that's restaurant-quality without requiring fancy equipment.
What you'll end up with is a plate of perfectly seared beef strips with a glossy, caramelized crust and gai lan that's tender-crisp with just a hint of bite.
The sauce ties everything together with a perfect balance of sweet, salty, and umami notes, creating a dish that's both satisfying and elegant. This recipe serves as a complete meal on its own or pairs beautifully with steamed jasmine rice to soak up every last bit of flavor.
One of the best aspects of this dish is its versatility—it works equally well as a weeknight dinner or a special occasion meal. The technique is straightforward, but the results are impressive, making it perfect for both beginners and experienced cooks looking to elevate their stir-fry game.
Let's get started on creating this flavorful, texturally perfect dish that brings the wok's magic to your kitchen.
Ingredients for beef and gai lan
Thinly sliced beef meets vibrant gai lan in this umami-packed wok masterpiece—where restaurant-quality textures meet home-cook simplicity.
| Ingredient | Amount | Notes |
|---|---|---|
| Flank Steak 🥩 | 1 lb | Thinly sliced against grain |
| Gai Lan (Chinese Broccoli) 🥬 | 1 lb | Stems cut into 2-inch pieces |
| Soy Sauce 🍶 | 3 tbsp | Light or dark, high-quality |
| Hoisin Sauce 🍶 | 1 tbsp | For umami depth |
| Sesame Oil 🫒 | 1 tbsp | Toasted, for aroma |
| Garlic Cloves 🧄 | 6 cloves | Minced, fresh preferred |
| Ginger Root 🌿 | 1 tbsp | Grated, fresh preferred |
| Brown Sugar 🍚 | 1 tbsp | Light or dark |
| Cornstarch 🌾 | 1 tbsp | For tenderizing beef |
| Vegetable Oil 🫒 | 2 tbsp | High smoke point |
| Green Onions 🧅 | 3 whole | Sliced, for garnish |
| Toasted Sesame Seeds 🌰 | 1 tbsp | For crunchy finish |
| Salt 🧂 | ½ tsp | Kosher or sea salt |
| Black Pepper 🌶️ | ¼ tsp | Freshly ground |
The flank steak is non-negotiable here—look for well-marbled cuts at Whole Foods or your local butcher. Slice it against the grain for maximum tenderness, and don't skip the cornstarch marinade—it's the secret to that signature silky texture. Gai lan should be bright green with firm stems—avoid wilted or yellowing leaves, which means it's past its prime. I always grab mine from Asian markets where they keep it freshest, but the regular produce section works too. For the sesame oil, Kadoya or La Choy are my go-tos—they've got that authentic toasted aroma that cheap brands miss.
No hoisin sauce? Substitute 1 tbsp soy sauce plus 1 tsp molasses for a quick fix. Fresh ginger and garlic are ideal, but powdered versions work at double the amount if you're in a pinch. The brown sugar can be swapped for white sugar or coconut sugar, though brown adds that caramelized depth. For the gai lan stems, cut them into 2-inch chunks—longer pieces will stay tough. And if you can't find gai lan? Sub broccoli florets, but they won't have the same silky texture. The beef marinade needs at least 30 minutes to work its magic—don't rush it!
Marinated beef keeps 2 days in the fridge, covered tightly. Gai lan stays fresh 5 days if wrapped in damp paper towels. For extra prep, slice the gai lan and marinate the beef the night before—this dish tastes even better the next day. Freeze the cooked beef in portions for 3 months if you're meal prepping. Garnish with sesame seeds right before serving—they add that final crunchy pop that makes it restaurant-worthy. Leftovers reheat beautifully in a hot wok or skillet with a splash of water to keep everything moist.
Why You'll Love This Recipe
- One-Pan Magic: I swear by this recipe when I need dinner fast—just slice the steak, blanch the gai lan, and toss everything in one pan. The sesame oil finishes it all with that golden aroma, and honestly? It’s the kind of meal that makes me feel like I actually cooked something impressive.
- Umami Bomb: That combo of soy and hoisin? Chef’s kiss. The gai lan soaks up the sticky-sweet sauce while the steak gets this perfect char, and the sesame oil adds a nutty punch that makes every bite taste like a tiny victory. My picky-eater husband even asks for seconds.
- Meal Prep MVP: Between us, this is my go-to for lunches all week. The flavors only get better as the steak tenderizes, and the gai lan reheats like a dream. Pack it in containers, and you’ve got a protein-packed lunch that’s way more exciting than sad desk salads.
- Budget Win: Flank steak stretches far, and gai lan is cheaper than most greens at the store. A little goes a long way—leftovers taste just as good cold in wraps the next day. (Yes, even on a Tuesday night.)
Step-by-step instructions for wok-seared beef and gai lan
Here's how to transform tough flank steak into tender, caramelized strips paired with crisp-tender gai lan.
Prep the Flank Steak for Maximum Tenderness
Place the 1 lb flank steak between two sheets of plastic wrap. Using a meat mallet, pound it to an even ¼-inch thickness—this ensures even cooking and prevents chewiness. The grain direction matters here: slice against it at a 45-degree angle into ¼-inch thick strips. You should end up with about 8-10 strips total.
In a medium bowl, combine the 1 tbsp cornstarch, 3 tbsp soy sauce, 1 tbsp hoisin sauce, 1 tbsp brown sugar, 0.5 tsp salt, and 0.25 tsp black pepper. Add the sliced flank steak and toss to coat evenly. Let it marinate for at least 20 minutes (or up to 2 hours in the fridge) while you prep the gai lan.
Blanch the Gai Lan for Crisp-Tender Texture
Cut the stems of the 1 lb gai lan into 2-inch pieces and leave the florets whole. In a large pot, bring 4 cups water to a rolling boil. Add the gai lan and cook for exactly 1 minute—this brief blanch preserves vibrant color and slight crunch. Immediately drain and rinse under cold water to stop cooking. The stems should be bright green and the florets still slightly crisp.
While the gai lan cools, heat a wok or large skillet over high heat until smoking. Add 2 tbsp vegetable oil and swirl to coat. The oil should shimmer but not smoke excessively—this is your signal to begin cooking.
Wok-Sear the Beef for Perfect Caramelization
Working in batches if needed, add half the marinated beef strips to the hot wok. Cook undisturbed for 1-2 minutes per side until the edges develop a deep mahogany crust. You'll smell that unmistakable sear—this is when the Maillard reaction kicks in, creating those complex umami flavors. Remove the beef and set aside, repeating with the remaining strips.
In the same wok, add 6 cloves minced garlic and 1 tbsp grated ginger root. Stir-fry for 30 seconds until fragrant but not browned. Pour in the 1 tbsp sesame oil and toss to coat the aromatics. This aromatic base will infuse the final dish with depth.
Combine Beef and Gai Lan in the Wok
Return all the beef strips to the wok along with the blanched gai lan. Stir-fry for 2-3 minutes until the gai lan is heated through and the beef is evenly coated in the caramelized sauce. The gai lan should be bright green with slightly wilted stems—this indicates perfect doneness. If the sauce seems too thick, add 1-2 tablespoons water to create a glossy finish.
Taste and adjust seasoning—you might need a touch more soy sauce for balance. The dish should sing with umami from the beef, sweetness from the brown sugar, and a subtle heat from the ginger and garlic. This is where all the flavors come together in harmony.
Garnish and Serve Immediately
Transfer the beef and gai lan to a serving platter. Garnish with 3 sliced green onions and 1 tbsp toasted sesame seeds for texture and visual appeal. The sesame seeds add a delightful crunch that contrasts beautifully with the silky greens and tender beef.
Serve immediately over steamed jasmine rice to soak up every last bit of that flavorful sauce. The contrast of hot rice, tender beef, and crisp gai lan makes this dish truly exceptional. Each bite delivers perfect texture contrast and layered flavors that keep coming back for more.
Pro Tips For Making Beef And Gai Lan
- Slice Against the Grain: Flank steak fights you if you cut with the grain—it’ll turn mushy. After cooking, slice diagonally at a 45-degree angle, not parallel to the cutting board. The fibers stay intact, and your bite holds together like it should.
- Blanch Gai Lan First: I learned this the hard way—raw gai lan turns bitter and slimy when tossed with hot beef. Blanch the stems and florets in boiling water for 30 seconds, then shock in ice water. The texture stays crisp, and the flavor stays bright.
- Use Two Sauces Separately: Dumping soy and hoisin together at the end makes the sauce cloyingly sweet. Instead, deglaze the pan with just soy sauce after searing the beef, then stir in hoisin at the very end. The beef absorbs the salty depth first, and the hoisin adds a glossy finish without overpowering.
- Let the Beef Rest—Really: Skipping the rest turns tender flank steak into a chewy mess. After cooking, tent it with foil and wait 5-10 minutes—yes, even if you’re starving. The juices redistribute, and every bite stays juicy, not stringy. (Your future self will thank you.)
Storing and reheating this recipe
Fridge Storage Tips
Store your cooked beef and gai lan together in an airtight container for up to 3 days in the fridge. The cornstarch marinade helps keep the beef moist, but I always add a splash of 1 tsp water before sealing to prevent drying.
The gai lan stays crisp-tender when refrigerated properly—just give it a quick stir before reheating. 🌱
Freezer-Friendly Prep
For longer storage, freeze the cooked beef and gai lan separately. Portion the beef into single-serving bags with 1 tsp soy sauce to preserve flavor, and freeze the gai lan in a single layer before transferring to a larger bag.
Both keep for 3 months—just thaw overnight in the fridge before reheating. I find freezing the beef alone works best for meal prep.
Stovetop Reheating
My preferred method is a quick stir-fry in a hot wok or skillet over medium-high heat. Add 1 tbsp vegetable oil and toss in the beef and gai lan with 1 tsp sesame oil for that signature aroma.
Cook for 3-4 minutes until everything is heated through and the gai lan regains its vibrant green color. A splash of water or beef broth keeps the sauce glossy. 🔥
Microwave Shortcuts
For busy weeknights, microwave individual portions covered with a damp paper towel for 1-2 minutes on high. Stir halfway through to redistribute heat. The beef might dry out slightly, so I always add 1 tsp soy sauce and ½ tsp sesame oil after reheating to restore moisture and flavor.
This works best for the beef alone—gai lan reheats better on the stovetop.
Garnish Refresh
Before serving, always add fresh green onions and toasted sesame seeds—these make all the difference! The seeds add crunch that reheating can't replicate. If the dish looks dry, drizzle with 1 tsp hoisin sauce or a mix of soy sauce and sesame oil to revive the glossy finish.
A sprinkle of black pepper wakes up the flavors too. ✨
Nutrition facts
Frequently asked questions
Can I substitute gai lan with regular broccoli?
You can, but the texture will differ. Gai lan's stems stay slightly crisp even when cooked, while broccoli florets become very soft. For a similar texture, use broccolini or blanch broccoli for just 30 seconds before stir-frying. The flavor won't be identical, but it works in a pinch!
What's the best cut of beef for this recipe?
Flank steak is ideal—it's flavorful and slices thinly. Sirloin or ribeye work too, but avoid tougher cuts like chuck. Always slice against the grain for maximum tenderness. For extra tenderness, marinate the beef for 2-4 hours instead of just 20 minutes.
How do I prevent the gai lan from getting mushy?
Blanching is key—only cook gai lan for 1 minute max, then shock in ice water. When stir-frying, cook it for just 2-3 minutes over high heat. Overcrowding the wok also causes steaming instead of searing. Work in batches if needed to maintain crispness.
Can I make this dish ahead of time?
Yes! Cook the beef and gai lan separately, then refrigerate in airtight containers for up to 3 days. Reheat the beef in a hot pan with 1 tsp soy sauce and ½ tsp sesame oil, while the gai lan reheats best in a steamer for 2-3 minutes. The flavors actually improve overnight!
What if I don't have hoisin sauce?
Mix 1 tbsp soy sauce with 1 tsp molasses or honey for a quick substitute. For deeper flavor, add ½ tsp garlic powder and ¼ tsp five-spice powder. The dish will still taste great—just slightly less complex. Store-bought hoisin is worth tracking down for that authentic umami punch!
