Quick Recipe Version (TL;DR)
Quick Ingredients
- 1 lb (450 g) flank or sirloin steak, thinly sliced across the grain
- Marinade: 1 tbsp light soy, 1 tbsp Shaoxing wine, 1 tsp cornstarch, 1/4 tsp baking soda, 1 tsp oil
- Veg: 1 medium onion, 2 bell peppers (any colors), 3 garlic cloves, 1-inch ginger, 2 scallions
- Sauce: 3 tbsp oyster sauce, 1 1/2 tbsp light soy, 1 tsp dark soy, 2 tbsp Shaoxing, 1/2 cup beef broth or water, 1 tsp sugar, 1 tsp rice vinegar (optional)
- Thickener: 2 tsp cornstarch mixed with 2 tbsp water
- 2 tsp freshly cracked black pepper
- 2 tbsp neutral oil (plus more if needed)
Do This
- 1. Toss beef with marinade; rest 15 minutes.
- 2. Stir together sauce; make cornstarch slurry.
- 3. Heat wok over high heat until smoking; add 1 tbsp oil.
- 4. Sear beef in two batches, 45–60 seconds each; remove.
- 5. Add 1 tbsp oil; stir-fry onion and peppers 2–3 minutes. Add garlic and ginger 30 seconds.
- 6. Bloom black pepper 10–15 seconds; pour in sauce; simmer. Return beef, add slurry; toss to glossy.
- 7. Finish with scallions; serve hot over rice.
Why You’ll Love This Recipe
- Velvety, ultra-tender beef thanks to a quick, reliable home cook velveting method.
- Peppery, glossy sauce layered with oyster sauce, soy, and Shaoxing wine depth.
- Fast weeknight stir-fry: under 10 minutes on the stove once you start cooking.
- Flexible with whatever bell peppers you have, and easy to scale up.
Grocery List
- Produce: 1 onion, 2 bell peppers, 3 garlic cloves, 1-inch knob fresh ginger, 2 scallions
- Dairy: None
- Pantry: 1 lb flank or sirloin steak, oyster sauce, light soy sauce, dark soy sauce, Shaoxing wine, beef broth (or water), cornstarch, neutral oil, black peppercorns, sugar, rice vinegar (optional), white rice (for serving)
Full Ingredients
Beef and Velveting Marinade
- 1 lb (450 g) flank steak or sirloin, very thinly sliced across the grain
- 1 tbsp light soy sauce
- 1 tbsp Shaoxing wine
- 1 tsp cornstarch
- 1/4 tsp baking soda
- 1 tsp neutral oil (canola, peanut, or sunflower)
Stir-Fry Sauce
- 3 tbsp oyster sauce
- 1 1/2 tbsp light soy sauce
- 1 tsp dark soy sauce (for color and caramel notes)
- 2 tbsp Shaoxing wine
- 1/2 cup (120 ml) low-sodium beef broth or water
- 1 tsp sugar
- 1 tsp rice vinegar (optional, to brighten)
- 2 tsp freshly cracked black pepper (coarse grind)
- 2 tsp cornstarch mixed with 2 tbsp water (slurry; add at the end)
Vegetables and Aromatics
- 1 medium yellow or white onion, sliced into 1/2-inch wedges
- 2 bell peppers (red, green, or mixed), seeded and sliced into 1/2-inch strips
- 3 garlic cloves, thinly sliced
- 1-inch (2.5 cm) piece fresh ginger, cut into fine matchsticks
- 2 scallions, sliced (greens for garnish, whites can go in with aromatics)
For the Wok
- 2 tbsp neutral high-heat oil, divided
To Serve
- Steamed jasmine rice

Step-by-Step Instructions
Step 1: Slice and velvet the beef
Freeze the steak for 15 minutes to firm it up. Slice very thinly across the grain. In a bowl, combine the light soy sauce, Shaoxing wine, cornstarch, baking soda, and oil. Add the beef and toss until every slice is coated. Marinate for 15 minutes at room temperature while you prep everything else.
Step 2: Mix the sauce and prep the veg
In a small bowl, whisk together the oyster sauce, light soy, dark soy, Shaoxing wine, broth (or water), sugar, and rice vinegar if using. In a separate small bowl, stir the cornstarch slurry (cornstarch plus water). Slice the onion and bell peppers, and prep the garlic, ginger, and scallions.
Step 3: Heat the wok properly
Set a wok or large skillet over high heat. Heat until it is smoking hot (a drop of water should evaporate on contact; approximately 450–500°F if using an infrared thermometer). Add 1 tbsp oil and swirl to coat.
Step 4: Sear the beef in batches
Spread half the beef in a single layer. Sear undisturbed for 30 seconds, then stir-fry another 15–30 seconds until just browned but still pink inside. Remove to a plate. Repeat with remaining beef, adding a touch more oil if the pan looks dry. Do not overcook; it will finish in the sauce.
Step 5: Stir-fry onions and peppers
Return the wok to high heat and add the remaining 1 tbsp oil. Add onion and bell peppers; stir-fry for 2–3 minutes until slightly tender with a bit of char at the edges. Add garlic and ginger; cook 30 seconds until fragrant.
Step 6: Build the black pepper sauce
Sprinkle in the freshly cracked black pepper and stir for 10–15 seconds to bloom it in the hot oil. Pour in the sauce mixture and bring to a lively simmer for 30–45 seconds.
Step 7: Thicken, finish, and serve
Return the beef and any juices to the wok. Stir the cornstarch slurry and add half of it; toss until the sauce is glossy and clings to the beef and vegetables, about 30–60 seconds. Add more slurry only if needed to reach a thin, nappe consistency. Toss in most of the scallions, reserving some for garnish. Serve immediately over hot jasmine rice, garnished with remaining scallions and an extra crack of black pepper if you like.
Pro Tips
- Use coarsely cracked pepper from a mortar and pestle or the largest setting on your mill for bold, aromatic heat.
- Do not overcrowd the pan when searing beef; cook in batches for proper browning.
- Keep everything dry and prepped before you start; stir-fry moves fast.
- For extra tenderness, slice beef 1/8 inch thick and strictly across the grain.
- If your wok isn’t screaming hot, the beef will steam. Preheat until lightly smoking before adding oil.
Variations
- Spicy black pepper beef: Stir-fry 1–2 sliced fresh red chiles with the garlic and ginger, or add 1/2 tsp chili flakes with the pepper.
- Mushroom and snap pea version: Add 6 oz sliced cremini mushrooms and 1 cup snap peas; stir-fry mushrooms first until browned, then proceed.
- Gluten-free: Use gluten-free oyster sauce and tamari in place of soy sauces; ensure Shaoxing is GF or substitute dry sherry.
Storage & Make-Ahead
Store leftovers in an airtight container for up to 3 days in the refrigerator. Reheat quickly in a hot skillet with a splash of water to re-loosen the sauce; avoid microwaving too long or the beef will toughen. Make-ahead: Slice vegetables up to 2 days in advance and mix the sauce up to 3 days ahead. Marinate beef for 15–30 minutes only (baking soda works fast); do not exceed 1 hour to prevent a mushy texture. You can freeze the raw, sliced beef (without baking soda) for up to 2 months; thaw, then marinate as directed.
Nutrition (per serving)
Approximate: 330 calories; 26 g protein; 18 g fat; 18 g carbohydrates; 2 g fiber; 7 g sugars; 1120 mg sodium. Calculated without rice.


Leave a Reply