Main Courses
This authentic Thai beef and broccoli recipe delivers the bold, balanced flavors of Bangkok street stalls in your home kitchen. The secret lies in marinating the beef with lemongrass, garlic, and fish sauce—creating layers of aromatic depth before wok-frying it to achieve that signature wok hei (breath of the wok) smokiness. Every bite combines tender beef, crisp-tender broccoli, and a glossy sauce that harmonizes sweet, sour, salty, and umami notes perfectly.
What sets this dish apart is the technique: high-heat stir-frying preserves the beef's juiciness while developing a caramelized crust, while the broccoli gets just enough char to add texture contrast. The sauce, made from coconut milk, fish sauce, and palm sugar, clings to every ingredient, transforming simple ingredients into a restaurant-quality meal. No shortcuts here—this is the real deal, just like your favorite Thai eatery.
By the time you plate it, you'll have a dish that's vibrant, aromatic, and packed with authentic Thai flavors—golden-brown beef slices, bright green broccoli florets, and a sauce that glistens under the light. The balance of flavors is what makes this recipe shine: the tang of lime, the richness of coconut, the umami from fish sauce, and the subtle sweetness of palm sugar all working together in harmony.
This recipe is designed to be approachable yet authentic, with clear steps that guide you through marinating, stir-frying, and plating like a pro. Whether you're cooking for family or impressing guests, this dish delivers the bold, complex flavors of Thailand without compromising on authenticity. Let's get started on creating this flavorful masterpiece.
Ingredients for authentic thai beef and broccoli
The heart of this Thai stir-fry: tender beef, aromatic herbs, and a sauce that balances sweet, sour, and umami perfectly.
| Ingredient | Amount | Notes |
|---|---|---|
| Flank Steak 🥩 | 1 ½ lb | Thinly sliced against grain |
| Fresh Lemongrass 🌿 | 1 whole | Bruised and cut into 2-inch pieces |
| Garlic Cloves 🧄 | 6 cloves | Minced for marinade |
| Fish Sauce 🍶 | 2 tbsp | Red Boat brand preferred |
| Palm Sugar 🍯 | 2 tbsp | Or substitute brown sugar |
| Lime Juice 🍋 | 2 tbsp | Freshly squeezed |
| Vegetable Oil 🫒 | 2 tbsp | High smoke point for wok-frying |
| Broccoli Florets 🥦 | 4 cups | Large florets, stem peeled |
| Coconut Milk 🥥 | ½ cup | Full-fat for richness |
| Thai Chili Paste 🌶️ | 1 tbsp | Maesri or similar |
| Green Onions 🧅 | 3 whole | Sliced for garnish |
| Salt 🧂 | 1 tsp | Kosher preferred |
| Black Pepper 🌶️ | ½ tsp | Freshly cracked |
| Sesame Oil 🫒 | 1 tsp | For finishing |
The beef is non-negotiable—flank steak delivers that signature tenderness when sliced thin against the grain. Look for well-marbled cuts at Whole Foods or your local Asian market, where they often have it pre-sliced. If you can't find it, sirloin works in a pinch, but slice it even thinner. Lemongrass is the secret weapon here: grab the thick stalks, bruise them with the side of your knife to release the oils, then cut into 2-inch pieces. Thai Kitchen sells frozen lemongrass if fresh isn't available, but it's worth hunting down fresh for that authentic aroma. The fish sauce? Red Boat is the gold standard—sweeter and less fishy than others, with no additives.
No fish sauce? Soy sauce plus a dash of anchovy paste mimics the umami, though it won't be identical. Palm sugar unavailable? Brown sugar works, but reduce by half—it's sweeter. For the coconut milk, full-fat is essential—light versions won't give that silky texture. The Thai chili paste can be swapped for sambal oelek at half the amount, but it'll be spicier. Broccoli stems are often wasted—peel and slice them thinly to add texture. Pro tip: microwave the broccoli for 1 minute before stir-frying to ensure it's crisp-tender, not mushy. And if you're feeling adventurous, add a splash of Thai basil at the end for that restaurant-quality aroma.
Marinate the beef for at least 30 minutes, but overnight is ideal—it develops deeper flavor. Store the marinade in an airtight container in the fridge for up to 2 days. The sauce can be prepped ahead and reheated gently. For leftovers, keep them in the fridge for 3 days—they reheat beautifully, though the broccoli may get softer. Freeze portions without sauce for up to 3 months. The sesame oil should be added last—it's for aroma, not cooking. Use a wok or cast-iron skillet for that signature wok hei, but a large nonstick pan works too. Just crank the heat to high.
Why You'll Love This Recipe
- No Chopping Chaos: I swear by this recipe because the steak slices itself thin—just pound it once, no knife work. The lemongrass and garlic get minced in seconds with a mortar and pestle, and honestly? That’s the hardest part.
- Umami Magic: Fish sauce and palm sugar collide in the most satisfying way—salty, sweet, with a hint of funk that sticks with you. The steak ends up tender but with that perfect chew, while the broccoli stays crisp. It’s the kind of dish that makes you pause mid-bite.
- Weeknight to Party: I make this for lazy Tuesdays (one pan, 25 minutes) and my in-laws’ dinner (same recipe, just plated prettier). The leftovers reheat like a dream—better than takeout, but no one will guess it’s homemade.
- Budget-Friendly Powerhouse: Flank steak stretches further than you’d think, and the aromatics cost pennies. I’ve fed four people for under $15, and they always ask for seconds. Plus, the sauce keeps in the fridge for weeks—just toss it with rice or noodles.
Step-by-step instructions for authentic Thai beef and broccoli
Here's how to create a restaurant-quality Thai beef and broccoli with perfect wok hei and balanced flavors.
Marinate the Flank Steak
Slice the 1.5 lb flank steak thinly against the grain into ¼-inch strips. In a medium bowl, combine the minced 6 cloves garlic, 2 tbsp fish sauce, 2 tbsp palm sugar, and 2 tbsp lime juice. Add the steak strips and toss to coat evenly. Let it marinate for at least 30 minutes at room temperature - this ensures tender, flavorful beef.
While marinating, bruise the 1 whole fresh lemongrass by pounding it gently with the side of your knife. Cut it into 2-inch pieces and set aside. The marinade should smell tangy and aromatic - if it's too thin, add a pinch of salt to help the flavors cling to the beef.
Prepare the Broccoli and Sauce Base
Peel the stems from the 4 cups broccoli florets and cut them into bite-sized pieces. Blanch them in boiling water for 30 seconds, then immediately plunge into ice water to stop cooking. This preserves their vibrant green color and crisp texture. Drain well and set aside.
In a small bowl, whisk together 0.5 cup coconut milk, 1 tbsp Thai chili paste, and 1 tsp salt. The mixture should be smooth - if it's too thick, add 1 tablespoon of water. This sauce will form the creamy, spicy foundation of your dish. Keep it at room temperature until ready to use.
Wok-Fry the Beef
Heat a wok or large skillet over high heat until smoking. Add 2 tbsp vegetable oil and swirl to coat. Working in batches if needed, add the marinated beef and stir-fry for 2-3 minutes until the edges turn golden brown and the beef is cooked through. Remove from the wok and set aside - the beef should be tender but still slightly firm to the touch.
In the same wok, add a bit more oil if needed and stir-fry the bruised lemongrass pieces for 30 seconds until fragrant. Add the blanched broccoli and stir-fry for 2 minutes until just tender. The vegetables should maintain their bright color and slight crunch - overcooking will make them mushy.
Combine and Finish
Return the beef to the wok and pour in the coconut milk sauce. Stir vigorously for 1-2 minutes until everything is well-coated and heated through. The sauce should thicken slightly as it incorporates with the beef and vegetables. Taste and adjust seasoning with additional fish sauce for saltiness or lime juice for acidity.
Remove from heat and stir in 1 tsp sesame oil and the sliced 3 whole green onions. The dish should have a perfect balance of sweet, spicy, tangy, and umami flavors. Serve immediately over steamed jasmine rice to soak up all that delicious sauce.
Pro Tips For Making Authentic Thai Beef And Broccoli
- SLICE STEAK AGAINST GRAIN: Flank steak’s fibers run long—cutting perpendicular means tender bites, not chewy disappointment. Use a sharp knife and slice after resting (yes, even if you’re impatient like me), or you’ll fight the grain the whole way.
- PULVERIZE LEMONGRASS FIRST: I used to slap whole stalks into the pan and wonder why the aroma was weak. Bruise the lemongrass with the side of your knife, then finely mince the pale center—this releases the oils and makes the flavor actually sing in the sauce.
- DON’T BOIL THE BROCCOLI: Bright green, crisp florets are non-negotiable. Blanch broccoli in salted water for exactly 1 minute*, then shock in ice water—any longer and it turns soggy. (I learned this the hard way after a sad, mushy batch.)
- SAUCE IN TWO STAGES: Start with garlic and lemongrass in oil over medium heat—this builds flavor without burning. Only after 2 minutes add fish sauce and palm sugar, then simmer. Rushing the sauce = bitter, salty mess. (Your future self will thank you.)
Creative variations of this authentic thai beef and broccoli
Spicy Thai Basil Twist
Swap the broccoli for 2 cups Thai basil leaves and add 1 tbsp chopped cilantro at the end. Stir-fry the beef with 2 tbsp Thai chili paste (like Maesri) and 1 tsp shrimp paste for extra umami. The basil wilts beautifully while adding that signature Thai aroma. Garnish with extra basil and a squeeze of lime for brightness. 🌿
Coconut Curry Fusion
Transform this into a creamy curry by adding ½ cup red curry paste (like Maesri) to the sauce base. Use 1 can (13.5 oz) coconut milk instead of just ½ cup, and simmer the beef and broccoli in the sauce for 10 minutes until everything is tender. Top with toasted cashews and fresh cilantro for texture contrast. This version is perfect for cooler evenings. 🥥
Sweet Chili Glaze
Create a sticky-sweet version by adding 3 tbsp sweet chili sauce (like Lee Kum Kee) to the sauce base. Toss the cooked beef and broccoli in the glaze and finish with 1 tsp sesame seeds and ½ tsp white pepper. The glaze caramelizes beautifully, giving the dish a glossy, restaurant-quality finish. Serve with extra rice to soak up the sauce. 🌶️
Vegetarian Swap
Replace the beef with 1 lb extra-firm tofu, pressed and cubed, or 1 lb mushrooms (shiitake or oyster). Marinate the tofu in the same sauce mixture for 20 minutes, then pan-fry until golden. The mushrooms add a meaty texture, while tofu soaks up the flavors perfectly. Both options keep the dish hearty and satisfying. 🍄
Spicy Coconut Soup Upgrade
Turn this into a soup by adding 4 cups beef or vegetable broth to the wok after stir-frying the beef and broccoli. Pour in the coconut milk sauce and simmer for 5 minutes until everything is heated through. Garnish with Thai basil, lime wedges, and crushed peanuts for crunch. Serve with rice noodles for a comforting, restaurant-style bowl. 🍜
Kaffir Lime Zest
Infuse the sauce with 2 kaffir lime leaves, bruised and added while cooking. The leaves release a citrusy aroma that elevates the dish without overpowering it. Remove them before serving, but their essence lingers in the sauce. Pair with a side of cucumber salad to balance the richness. This is a pro trick used in many Thai street food dishes. 🍋
Nutrition facts
Frequently asked questions
Can I use a different cut of beef instead of flank steak?
Yes! For best results, choose thinly sliced cuts like sirloin or ribeye—they stay tender when stir-fried. If using a thicker cut like flap steak, slice it paper-thin against the grain. Avoid tougher cuts like chuck, as they won't achieve the same silky texture. The key is thin slices that cook quickly over high heat.
How do I make this dish less spicy?
Reduce the Thai chili paste to ½ tbsp or swap it for mild sambal oelek. For extra mildness, add 1 tsp palm sugar or 1 tbsp coconut milk to balance the heat. Taste as you go—you can always add more sauce, but you can't remove spice once it's in!
Why is my sauce too thin or too thick?
If the sauce is too thin, simmer it uncovered for 1-2 minutes to reduce. For a thicker sauce, stir in ½ tsp cornstarch mixed with 1 tsp water>. The coconut milk should be full-fat—light versions won't thicken properly. Pro tip: Let the sauce rest for 5 minutes after cooking to thicken naturally.
Can I prep this recipe ahead of time?
Marinate the beef for up to 2 days ahead in the fridge. The sauce can be made 1 day ahead and reheated gently. For best texture, stir-fry the beef and broccoli fresh, but you can partially cook the beef (until 145°F) and refrigerate it. Reheat everything together over high heat for 2-3 minutes to restore that wok hei aroma.
What’s the best way to get that smoky wok hei flavor at home?
Use a wok or cast-iron skillet on maximum heat until it’s smoking. Add oil, then immediately add the beef—don’t overcrowd the pan. Stir constantly to create steam and smoke. For extra aroma, finish with ½ tsp sesame oil** and a pinch of sugar, then flame the alcohol (if using) for a quick burst of smokiness. High heat is key—don’t let the temperature drop!
