
By Meri Hartford
A glossy, savory beef stir-fry studded with sweet, deeply caramelized onions and served over fluffy steamed white rice. Bright notes of ginger and a silky soy-oyster glaze make every bite rich and balanced — restaurant-quality flavor that comes together quickly on a weeknight.
Start the rice: Rinse the 1 1/2 cups of rice under cold water until the rinse runs clear to remove surface starch. Combine rinsed rice and 2 3/4 cups water in a medium pot, add a pinch of salt, bring to a gentle boil, then reduce to the lowest simmer, cover, and cook 15 minutes. Rest covered off heat 10 minutes. Why: rinsing prevents gummy rice and a consistent water ratio produces separate, fluffy grains that pair well with saucy stir-fry.
Prep the beef and aromatics: Trim any silver skin from the steak and slice thinly across the grain into 1/8–1/4-inch strips. Toss the beef with 1/2 tbsp soy sauce and 1/2 tbsp cornstarch and let it sit 8–10 minutes. Why: slicing across the grain shortens muscle fibers for tender bites; the cornstarch and soy coat the beef to promote an even sear and later help thicken the sauce.
Make the sauce: In a bowl combine remaining 2 1/2 tbsp soy sauce, oyster sauce, rice vinegar, brown sugar, sesame oil, and 2 tbsp cold water. Stir until sugar dissolves. Why: mixing the sauce in advance lets flavors marry and keeps the stir-fry moving at the stove so nothing overcooks.
Caramelize the onions: Heat a large heavy skillet or wok over medium-high heat. Add 1 tbsp vegetable oil and once shimmering add the sliced onions with a pinch of salt. Sauté, stirring occasionally, 6–8 minutes until edges turn golden and onions begin to soften. Reduce heat briefly if they brown too fast. Why: gently caramelizing onions develops their natural sweetness and creates a flavor contrast to the savory beef; starting them a few minutes before the high-heat sear prevents them from being raw or harsh.
Sear the beef in two batches: Increase heat to high and push the onions to the side (or remove and keep warm). Add the remaining 1 tbsp vegetable oil and spread beef in a single layer. Don’t crowd the pan—sear 1–2 minutes per side until a deep brown crust forms, then remove to a plate. Repeat with remaining beef. Why: high-heat searing quickly browns the surface via Maillard reaction, giving intense flavor; batching maintains pan temperature so the meat sears instead of steaming.
Build the aromatics: Lower heat to medium-high, add a small splash of oil if the pan looks dry, then add minced garlic and ginger. Stir 20–30 seconds until fragrant — don’t let garlic burn. Why: briefly cooking aromatics in the hot pan releases their essential oils and flavors into the oil, creating the flavorful backbone for the sauce.
Combine and glaze: Return onions (and any accumulated juices) and seared beef to the pan. Pour the prepared sauce over everything and bring to a quick simmer. Stir the remaining 1/2 tbsp cornstarch into 2 tbsp cold water to make a slurry, then slowly drizzle it into the simmering pan while stirring. Cook 1–2 minutes until the sauce has thickened and coats the beef. Why: the slurry instantly thickens the sauce to a glossy glaze that clings to the meat and rice; adding it gradually lets you control thickness.
Finish and season: Taste and adjust salt/pepper or a splash more rice vinegar if you want brighter acidity. Stir in sliced green onions, then remove from heat. Why: finishing adjustments balance sweetness, saltiness and acidity for a restaurant-quality sauce; green onions add freshness and color.
Plate: Fluff rice with a fork and divide between 4 plates. Spoon the beef and caramelized onions over the rice, drizzle any remaining glaze from the pan, and sprinkle toasted sesame seeds if using. Serve immediately. Why: plating over rice captures every drop of the sauce and keeps the dish warm; sesame seeds add a nutty finish and a textural pop.
609
Calories
36g
Protein
70g
Carbs
17g
Fat
2g
Fiber
How did this recipe turn out? Let others know!
to rate this recipe
By Meri Hartford

A glossy, savory beef stir-fry studded with sweet, deeply caramelized onions and served over fluffy steamed white rice. Bright notes of ginger and a silky soy-oyster glaze make every bite rich and balanced — restaurant-quality flavor that comes together quickly on a weeknight.
Start the rice: Rinse the 1 1/2 cups of rice under cold water until the rinse runs clear to remove surface starch. Combine rinsed rice and 2 3/4 cups water in a medium pot, add a pinch of salt, bring to a gentle boil, then reduce to the lowest simmer, cover, and cook 15 minutes. Rest covered off heat 10 minutes. Why: rinsing prevents gummy rice and a consistent water ratio produces separate, fluffy grains that pair well with saucy stir-fry.
Prep the beef and aromatics: Trim any silver skin from the steak and slice thinly across the grain into 1/8–1/4-inch strips. Toss the beef with 1/2 tbsp soy sauce and 1/2 tbsp cornstarch and let it sit 8–10 minutes. Why: slicing across the grain shortens muscle fibers for tender bites; the cornstarch and soy coat the beef to promote an even sear and later help thicken the sauce.
Make the sauce: In a bowl combine remaining 2 1/2 tbsp soy sauce, oyster sauce, rice vinegar, brown sugar, sesame oil, and 2 tbsp cold water. Stir until sugar dissolves. Why: mixing the sauce in advance lets flavors marry and keeps the stir-fry moving at the stove so nothing overcooks.
Caramelize the onions: Heat a large heavy skillet or wok over medium-high heat. Add 1 tbsp vegetable oil and once shimmering add the sliced onions with a pinch of salt. Sauté, stirring occasionally, 6–8 minutes until edges turn golden and onions begin to soften. Reduce heat briefly if they brown too fast. Why: gently caramelizing onions develops their natural sweetness and creates a flavor contrast to the savory beef; starting them a few minutes before the high-heat sear prevents them from being raw or harsh.
Sear the beef in two batches: Increase heat to high and push the onions to the side (or remove and keep warm). Add the remaining 1 tbsp vegetable oil and spread beef in a single layer. Don’t crowd the pan—sear 1–2 minutes per side until a deep brown crust forms, then remove to a plate. Repeat with remaining beef. Why: high-heat searing quickly browns the surface via Maillard reaction, giving intense flavor; batching maintains pan temperature so the meat sears instead of steaming.
Build the aromatics: Lower heat to medium-high, add a small splash of oil if the pan looks dry, then add minced garlic and ginger. Stir 20–30 seconds until fragrant — don’t let garlic burn. Why: briefly cooking aromatics in the hot pan releases their essential oils and flavors into the oil, creating the flavorful backbone for the sauce.
Combine and glaze: Return onions (and any accumulated juices) and seared beef to the pan. Pour the prepared sauce over everything and bring to a quick simmer. Stir the remaining 1/2 tbsp cornstarch into 2 tbsp cold water to make a slurry, then slowly drizzle it into the simmering pan while stirring. Cook 1–2 minutes until the sauce has thickened and coats the beef. Why: the slurry instantly thickens the sauce to a glossy glaze that clings to the meat and rice; adding it gradually lets you control thickness.
Finish and season: Taste and adjust salt/pepper or a splash more rice vinegar if you want brighter acidity. Stir in sliced green onions, then remove from heat. Why: finishing adjustments balance sweetness, saltiness and acidity for a restaurant-quality sauce; green onions add freshness and color.
Plate: Fluff rice with a fork and divide between 4 plates. Spoon the beef and caramelized onions over the rice, drizzle any remaining glaze from the pan, and sprinkle toasted sesame seeds if using. Serve immediately. Why: plating over rice captures every drop of the sauce and keeps the dish warm; sesame seeds add a nutty finish and a textural pop.
609
Calories
36g
Protein
70g
Carbs
17g
Fat
2g
Fiber
Your Rating: