Whip up this Easy Weeknight Beef Stir Fry in just 30 minutes for a quick high-protein meal. Tender beef strips and crisp vegetables in a savory sauce—perfect for busy families.
Ingredients
Instructions
Prepare the beef: Place the flank steak in the freezer for about 15 minutes to firm up—this makes slicing thin strips much easier. Once slightly firm, slice the beef thinly against the grain. Cutting against the grain shortens the muscle fibers, ensuring tender bites rather than chewy pieces. Aim for slices about 1/4-inch thick. Transfer the sliced beef to a bowl and add 1 tablespoon of soy sauce, 1 teaspoon of cornstarch, and 1 teaspoon of sesame oil. Toss well to coat evenly. The cornstarch helps create a velvety texture on the beef when cooked, locking in moisture and promoting browning. Let the beef marinate for at least 10 minutes while you prep the vegetables. This short marination not only seasons the meat but also tenderizes it slightly.

Prepare the sauce: In a small bowl, whisk together the remaining 1 tablespoon soy sauce, oyster sauce, hoisin sauce, rice vinegar, and 2 tablespoons of water. Set aside. This combination creates a balanced savory-sweet glaze with umami depth. Oyster sauce adds a rich, slightly sweet seafood note, while hoisin brings a touch of sweetness and complexity. Rice vinegar cuts through the richness with acidity, brightening the final dish. You can adjust the proportions to taste—add more hoisin if you prefer a sweeter stir fry, or more rice vinegar for tang.

Prep all vegetables: Slice the onion into thin wedges, the bell pepper into strips, and cut the broccoli into small florets (about 1-inch pieces). Trim the snap peas and shred the carrots if not pre-shredded. Keeping vegetables uniform in size ensures even cooking. Have all ingredients within reach because stir-frying moves fast. Mince the garlic and grate the ginger. Fresh ginger and garlic are essential—they provide aromatic punch that dried versions cannot replicate. Set everything near the stove.

Sear the beef: Heat 1 tablespoon of vegetable oil in a large wok or heavy-bottomed skillet over high heat until shimmering. High heat is crucial for stir-frying; it creates a quick sear that locks in juices and develops a caramelized crust. Add the beef in a single layer without overcrowding. If necessary, cook in two batches to avoid steaming the meat. Let the beef sear undisturbed for 1-2 minutes until a deep brown crust forms, then stir-fry for another minute until just cooked through. The beef should be browned on the outside but still tender inside. Transfer the cooked beef to a plate and set aside.

Stir-fry the aromatics and vegetables: Reduce the heat to medium-high and add the remaining 1 tablespoon of vegetable oil. Add the sliced onion, bell pepper, broccoli, snap peas, and shredded carrots. Stir-fry for 2-3 minutes, tossing constantly, until the vegetables are crisp-tender. You want them vibrant in color and slightly charred in spots but still crunchy. Add the minced garlic and grated ginger, and stir-fry for 30 seconds until fragrant. Be careful not to burn the garlic—it should become aromatic but not bitter. The combination of onion, bell pepper, broccoli, snap peas, and carrots provides a variety of textures and colors, making the dish visually appealing and nutritionally balanced.
Combine everything: Return the cooked beef to the wok along with any accumulated juices. Pour the prepared sauce over the beef and vegetables. Stir-fry everything together for 1-2 minutes until the sauce thickens slightly and coats all ingredients evenly. The sauce should bubble and reduce, clinging to the beef and vegetables like a glossy glaze. If the sauce seems too thick, add a splash of water. Taste and adjust seasoning if needed—add a pinch of salt or a dash more soy sauce. The final dish should be savory, slightly sweet, and well-balanced.
Serve immediately: Transfer the stir fry to a serving platter or divide among plates. Garnish with sliced green onions and sesame seeds for a fresh, nutty finish. Serve over steamed rice, noodles, or cauliflower rice for a low-carb option. The contrast of hot stir fry with fluffy rice is classic and satisfying. For best texture, enjoy immediately while the vegetables are still crisp and the beef is tender. Leftovers can be stored in an airtight container in the refrigerator for up to 3 days, but note that vegetables will soften upon reheating.
For best results
- Slice beef against the grain: This is the single most important step for tender beef. The grain refers to the direction of the muscle fibers. Slicing across (perpendicular to) the grain shortens those fibers, making each bite easier to chew. To identify the grain, look for the parallel lines running along the meat. A sharp knife is essential—dull knives tear the meat and make clean slices difficult. If you have time, marinate the beef for 30 minutes to an hour for deeper flavor and even more tenderness.
- Use high heat and don't overcrowd the pan: Stir-frying is a high-heat cooking method that requires a very hot wok or skillet. Heating the pan until it just starts to smoke ensures a proper sear. If you add too much beef at once, the temperature drops and the meat steams instead of sears. Cook in batches if needed. A wok’s shape allows heat to concentrate at the bottom while the sides stay cooler, ideal for tossing ingredients without burning. If using a skillet, choose a heavy-bottomed one that retains heat well.
- Prep everything before you start cooking: Stir-frying moves fast—once you start, there’s no time to chop or measure. This is called mise en place. Have all vegetables sliced, sauce mixed, and beef marinated before turning on the heat. Arrange them in order of cooking: aromatics first, then vegetables that take longer (broccoli, carrots), then quick-cooking items (snap peas, bell pepper). This workflow ensures everything finishes at the same time and prevents overcooking.
- Customize your vegetables: Feel free to swap in any vegetables you have on hand. Mushrooms, zucchini, bok choy, baby corn, water chestnuts, or asparagus all work beautifully. The key is to cut them into similar sizes for even cooking. For a more substantial stir fry, add a handful of bean sprouts or sliced cabbage. Frozen vegetables can be used in a pinch—add them directly without thawing, but reduce cooking time to avoid mushiness.
- Make it saucy but not soupy: The sauce should coat the ingredients, not pool at the bottom. If your sauce is too thin, mix a teaspoon of cornstarch with a tablespoon of cold water to make a slurry, then stir it in during the final minute of cooking. The slurry will thicken the sauce quickly. Conversely, if the sauce becomes too thick, add a splash of chicken broth or water. The ideal consistency is like a light glaze that clings to each piece.
- Don't skip the marination step: Even 10 minutes makes a difference. The cornstarch in the marinade creates a protective coating that helps the beef stay moist and promotes browning. Soy sauce seasons the meat from within, and sesame oil adds a subtle nutty aroma. For an even more tender result, add a pinch of baking soda to the marinade (1/4 teaspoon per pound). Baking soda raises the pH of the meat, helping it retain moisture. Just don't overdo it, or it can impart a soapy flavor.
- Reheat leftovers properly: To revive leftover stir fry, reheat it in a hot wok or skillet with a splash of water or broth to restore moisture. Microwaving can make vegetables soggy and beef rubbery. If using a microwave, cover the dish and heat in 30-second bursts, stirring in between. For best results, enjoy stir fry fresh—vegetables lose their crunch upon reheating. Store sauce and rice separately if possible to prevent sogginess.
Variations
- Chicken Stir Fry: Substitute boneless skinless chicken thighs or breasts for the beef. Slice chicken thinly against the grain and marinate similarly. Cooking time is about the same—just ensure chicken reaches an internal temperature of 165°F (74°C). For extra flavor, add a teaspoon of Chinese five-spice powder to the marinade. This variation is equally quick and high in protein, with slightly less saturated fat.
- Vegetarian Tofu Stir Fry: Replace beef with extra-firm tofu, pressed and cubed. Marinate the tofu in the same sauce mixture for 15 minutes, then pan-fry until golden on all sides before adding vegetables. Tofu absorbs flavors beautifully and provides a plant-based protein option. For a vegan version, ensure oyster sauce is replaced with mushroom sauce or additional soy sauce. Add edamame or cashews for extra protein and crunch.
- Spicy Szechuan Style: Add 1-2 teaspoons of chili bean paste (doubanjiang) or sambal oelek to the sauce for heat. Toss in dried red chili peppers and a teaspoon of Szechuan peppercorns for a numbing, spicy kick. Garnish with fresh cilantro instead of green onions. This variation brings bold, fiery flavors that pair well with cold beer or a cucumber salad to cool the palate.
- Low-Carb/Keto Option: Skip the rice or noodles and serve the stir fry over cauliflower rice or zucchini noodles. Increase the amount of vegetables and use a sugar-free hoisin sauce or substitute with additional soy sauce and a few drops of stevia. The dish remains satisfying and macro-friendly, with net carbs reduced to under 10g per serving. Add a tablespoon of coconut aminos for a slightly sweeter, soy-free alternative.
- Peanut Sauce Twist: Replace the stir-fry sauce with a peanut sauce made from 3 tablespoons peanut butter, 2 tablespoons soy sauce, 1 tablespoon rice vinegar, 1 teaspoon sriracha, and 2 tablespoons warm water. Whisk until smooth and pour over the cooked beef and vegetables. Garnish with crushed peanuts and lime wedges. This variation offers a creamy, nutty flavor profile reminiscent of Thai cuisine.
- Budget-Friendly Version: Use a less expensive cut of beef like top round or chuck, but slice it very thin and marinate longer (30 minutes) to tenderize. Alternatively, use ground beef—brown it first, then set aside and proceed with vegetables. Ground beef stir-fry is quicker and more affordable, though texture differs. Bulk up the dish with more vegetables like cabbage or frozen mixed vegetables to stretch the meat further.
Nutrition
- Calories385 kcal
- Total Fat18g
- Saturated Fat5g
- Cholesterol75mg
- Sodium720mg
- Total Carbohydrates18g
- Dietary Fiber4g
- Sugars8g
- Protein34g
