Soups & Stews
This beef and celery recipe transforms simple ingredients into a restaurant-quality stir-fry where tender beef meets crunchy celery bites in a savory, aromatic sauce. The secret lies in high-heat searing followed by quick stir-frying—just 15 minutes from start to finish—while preserving the celery's satisfying crunch. I developed this after years of testing how to balance beef's richness with celery's crisp freshness without overpowering either. What sets this dish apart is the two-stage cooking process: first browning the beef for deep flavor, then tossing everything together with a homemade sauce that's both sweet and umami-rich. The celery stays al dente with a satisfying bite, while the beef becomes fork-tender without drying out. This technique works perfectly for weeknight dinners or meal prep—just double the batch and store leftovers for up to 4 days. The result is a dish that's bold yet balanced, with caramelized beef, vibrant celery, and a sauce that clings perfectly to each bite. Serve it over steamed jasmine rice or noodles to soak up every last drop of that flavorful sauce. The combination of textures and flavors makes this stir-fry a standout main course that feels both comforting and elegant. For extra depth, finish with toasted sesame seeds and sliced green onions. The recipe scales easily for crowds, and the same technique works with chicken or shrimp if you prefer. Let's get cooking!
Ingredients for beef and celery
Restaurant-quality stir-fry relies on just 14 ingredients—bold flavors and perfect textures start here.
| Ingredient | Amount | Notes |
|---|---|---|
| Flank Steak 🥩 | 1 ¼ lb | Thinly sliced against grain |
| Celery Stems 🧅 | 2 whole | Cut into 1-inch pieces |
| Green Onions 🌿 | 4 whole | Sliced into 1-inch pieces |
| Sesame Seeds 🌰 | 1 tbsp | Toasted for garnish |
| Soy Sauce 🍶 | ½ cup | Low-sodium preferred |
| Oyster Sauce 🍜 | 2 tbsp | For umami depth |
| Honey 🍯 | 1 tbsp | For subtle sweetness |
| Garlic Cloves 🧄 | 4 cloves | Minced finely |
| Fresh Ginger 🌿 | 1 tbsp | Grated, aromatic |
| Vegetable Oil 🫒 | 2 tbsp | High smoke point |
| Jasmine Rice 🍚 | 1 ½ cups | Uncooked, for serving |
| Kosher Salt 🧂 | 1 ½ tsp | Diamond Crystal preferred |
| Black Pepper 🌶️ | ½ tsp | Freshly cracked |
| Cornstarch 🌾 | 1 tbsp | For tenderizing beef |
The flank steak is non-negotiable for this dish—its lean yet tender texture holds up beautifully when sliced thinly against the grain. Ask your butcher to cut it if the pre-packaged slices are too thick. For celery, organic stalks from the grocery store’s produce section stay crispest, but conventional works too. The key is cutting the celery into uniform 1-inch pieces so they cook evenly without turning mushy. If you’re prepping ahead, store the sliced celery in a sealed container with a damp paper towel to maintain crunch. Whole Foods or local farmers' markets often carry celery with tighter stalks, which translates to better texture in stir-fries.
No oyster sauce? Substitute with 1 tbsp soy sauce plus 1 tsp fish sauce for umami depth, though the flavor will differ slightly. The honey can be swapped for maple syrup if you prefer, but it adds a distinct floral note that complements the beef’s richness. For the garlic and ginger, freshly grated or minced is essential—bottled minced garlic lacks the aromatic punch. If you’re short on time, use jarred minced garlic but add an extra clove. The cornstarch isn’t just for thickening; it tenderizes the beef when marinated for even 10 minutes. For extra crunch, toast the sesame seeds in a dry pan for 1-2 minutes until fragrant before sprinkling on top.
This stir-fry reheats beautifully—just add a splash of water or soy sauce to the pan and toss over high heat. It keeps for 4 days in the fridge or 3 months frozen, though the celery’s texture softens over time. For meal prep, store the cooked beef and celery separately, then combine with fresh rice and sauce when reheating. The jasmine rice should be steamed just before serving to maintain its delicate texture. If you’re scaling up for a crowd, double the beef and celery but reduce the cornstarch marinade time to 5 minutes to avoid over-tenderizing.
Why You'll Love This Recipe
- One-Pan Magic: I swear by this for nights when I’d rather not wash a million dishes—just slice the celery, sear the flank steak, and toss everything in one pan. The soy sauce caramelizes into a glossy glaze while the celery softens just enough to soak it up.
- Umami Bomb: That first bite of tender flank steak with crisp-tender celery and a sprinkle of toasted sesame seeds? It’s like a flavor party in your mouth. The soy sauce cuts through the richness, and the green onions add this bright, fresh finish that makes it feel restaurant-worthy.
- Lunchbox Hero: Between us, this is my go-to for meal prep—packs beautifully in containers and stays fresh for days. Cold or reheated, the beef stays juicy, and the celery holds its crunch. Honestly, my kids fight over who gets the extra portion when I bring it to work.
- Budget Stretch: Flank steak is affordable, and celery lasts forever in the crisper. A single pound of beef stretches across three meals, and the rest of the ingredients cost pennies. I’ll be real: this is how I feed my family well without breaking the bank—no fancy cuts or overpriced sauces needed.
Step-by-step instructions for savory stir-fry with crunchy celery bites
Master this technique and you'll achieve perfectly tender beef with celery that stays crisp throughout.
👨🍳 Step 1: Marinate and Prep the Flank Steak
Place the 1.25 lb flank steak between two sheets of plastic wrap and pound it to an even ¼-inch thickness using a meat mallet. This ensures even cooking and prevents toughness. Cut the steak against the grain into ¼-inch thick strips. In a bowl, combine the 1 tbsp cornstarch, 1.5 tsp kosher salt, and 0.5 tsp black pepper, then toss the steak strips in this mixture until fully coated.
In a separate small bowl, whisk together the 0.5 cup soy sauce, 2 tbsp oyster sauce, 1 tbsp honey, 4 cloves minced garlic, and 1 tbsp grated fresh ginger. Pour this marinade over the steak and let it sit at room temperature for 15-20 minutes. This marinade not only tenderizes the beef but also infuses it with deep umami and aromatic flavors that will shine in the stir-fry.
🍳 Step 2: Cook the Jasmine Rice
Rinse the 1.5 cups jasmine rice under cold water until the water runs clear, then drain well. In a rice cooker or pot, combine the rice with 2 cups water and ½ tsp kosher salt. Bring to a boil, then reduce heat to low and simmer for 15 minutes (or follow your rice cooker's instructions). Cover and let it steam for an additional 10 minutes off the heat. Fluff with a fork before serving—this ensures each grain is separate and ready to soak up the stir-fry sauce.
While the rice cooks, prepare the celery and green onions. Cut the 2 whole celery stems into 1-inch pieces and slice the 4 whole green onions into 1-inch segments. Set them aside—the celery should remain crisp, so avoid overcrowding the pan later.
🔥 Step 3: Stir-Fry the Beef to Perfect Doneness
Heat a large skillet or wok over high heat until a drop of water sizzles and evaporates instantly. Add the 2 tbsp vegetable oil and swirl to coat the pan evenly. Working in batches if needed, add the marinated steak strips and sear for 1-2 minutes per side until they develop a deep golden-brown crust. Remove the beef from the pan and set aside—it should be cooked to medium-rare (145°F internal temperature) at this stage.
In the same pan, add the 1-inch celery pieces and green onion segments over medium-high heat. Stir-fry for 2-3 minutes until the celery softens slightly but retains a crunchy texture—this is key to the dish's texture contrast. Add the 4 cloves minced garlic and 1 tbsp grated fresh ginger, stirring for 30 seconds until fragrant. Pour in the reserved marinade from the steak and bring to a simmer, scraping up any browned bits from the bottom of the pan.
🥘 Step 4: Combine and Finish the Stir-Fry
Return the beef to the pan and toss everything together for 1-2 minutes until the sauce coats the beef and celery evenly. The beef should be heated through and the celery should remain crisp with slight softness. Taste and adjust seasoning if needed—add a splash of water or soy sauce if the sauce is too thick.
Divide the jasmine rice among serving plates and top each portion with the beef and celery stir-fry. Garnish with 1 tbsp toasted sesame seeds and an extra sprinkle of black pepper. Serve immediately while the beef is still juicy and the celery retains its satisfying crunch.
⏰ Step 5: Rest and Serve for Optimal Texture
Let the stir-fry rest for 2-3 minutes before serving—this allows the flavors to meld and the juices to redistribute in the beef. The celery should be tender-crisp, not mushy, and the beef should be juicy with a slight chew. If the celery feels too soft after resting, it means it was overcrowded in the pan—next time, cook in batches to maintain its crunch.
Pair this stir-fry with a side of steamed bok choy or a simple cucumber salad to balance the richness. The contrast of textures—tender beef, crisp celery, and fluffy rice—makes this dish truly satisfying. The key to success lies in high heat, quick cooking, and precise timing to preserve the celery's crunch while achieving perfect beef doneness.
Pro Tips For Making Beef And Celery
- SEAR THE STEAK FAST: Flank steak has a habit of sticking like glue if you’re not careful. Heat a screaming-hot skillet—cast iron if you have it—then pat the steak bone-dry with paper towels before searing. Two minutes per side max, or you’ll end up with a chewy brick instead of tender slices.
- SLICE THE CELERY LENGTHWISE: I used to chop celery into tiny cubes, and it’d turn to mush in seconds. Instead, halve the stems lengthwise, then slice thinly into half-moons. This keeps the texture crisp and lets it absorb the soy sauce without falling apart.
- DON’T OVERCOOK THE GREEN ONIONS: Green onions wilt faster than a sad houseplant in a hot pan. Add them last—just 30 seconds—so they stay bright and crisp. If you’re stir-frying, toss them in after the beef and celery are already cooked.
- USE TOASTED SESAME SEEDS: Skip the raw seeds—they taste bland and forgettable. Dry-toast them in the same pan you seared the steak (just 30 seconds, no oil) for a nutty depth. Sprinkle them over the dish right before serving, or they’ll sink to the bottom like lost change.
Dietary considerations for this recipe
Low-Carb Adaptations
Swap the jasmine rice for cauliflower rice to keep this stir-fry low-carb while maintaining texture. Use 1.5 cups riced cauliflower (fresh or frozen, thawed) cooked in a dry pan over medium heat for 5-6 minutes until tender-crisp. The celery and beef provide enough natural sweetness to balance the dish without missing the rice. For extra flavor, toss the cauliflower rice with 1 tsp toasted sesame oil before serving. 🥬
Gluten-Free Options
This recipe is naturally gluten-free if you use certified gluten-free soy sauce like Kikkoman Gluten-Free Tamari. Double-check all other ingredients—especially oyster sauce, which often contains wheat. For an extra umami boost, add 1 tbsp gluten-free fish sauce to the marinade. The cornstarch in the beef marinade is also gluten-free, but if you're avoiding all starches, skip it and rely solely on the tenderizing effects of the soy sauce and acidity from the ginger. 🌾
Dairy-Free Considerations
This stir-fry is already dairy-free, but the celery can sometimes contain dairy-based preservatives. Opt for organic celery when possible, or rinse conventional celery thoroughly. For extra richness, stir in 1 tsp coconut aminos with the soy sauce—it adds a subtle sweetness that complements the beef beautifully. The sesame seeds and green onions provide natural crunch and color without any dairy components. 🥥
Allergen-Friendly Swaps
For nut allergies, skip the sesame seeds and garnish with toasted pumpkin seeds instead—they add a similar crunch with a different flavor profile. If you're avoiding all nuts and seeds, a sprinkle of crushed red pepper flakes adds heat and visual appeal. For soy allergies, replace the soy sauce with coconut aminos and oyster sauce with mushroom sauce (like Lee Kum Kee brand). Always check labels on sauces for hidden allergens. 🌶️
Protein Variations
This technique works beautifully with other proteins too! Swap the beef for shrimp (peeled and deveined) or chicken breast (sliced thinly). For shrimp, toss with 1 tbsp cornstarch and ½ tsp salt, then stir-fry for just 1-2 minutes per side to avoid overcooking. Chicken requires 2-3 minutes per side to reach 165°F internal temperature. The celery and sauce pair equally well with all these proteins. 🦐
Vegetarian Adaptations
For a vegetarian version, replace the beef with extra-firm tofu pressed for 15 minutes to remove excess water. Cut into ¼-inch strips, then marinate in the same sauce for 20 minutes. Stir-fry until golden brown, then proceed with the celery and sauce as written. For added protein, include 1 cup sliced mushrooms (like shiitake or cremini) in the stir-fry—they absorb the sauce beautifully. 🍄
Nutrition facts
Frequently asked questions
Why does the recipe call for slicing beef against the grain?
Slicing flank steak against the grain shortens the muscle fibers, making the beef more tender when cooked. This technique prevents toughness and ensures each bite has a pleasant, melt-in-your-mouth texture. If you skip this step, the beef may end up chewy even after stir-frying.
Can I use frozen celery in this recipe?
Fresh celery is ideal for maintaining that satisfying crunch, but if you must use frozen, thaw it first and pat it completely dry. Frozen celery often has excess moisture that can steam in the pan, turning it mushy. For best results, use fresh celery from the grocery store's produce section.
How do I prevent the celery from turning mushy?
Overcrowding the pan is the #1 culprit! Cook the celery in batches over medium-high heat for just 2-3 minutes until slightly softened but still crisp. High heat and minimal time are key—never stir-fry with a crowded pan, as steam builds up and softens the celery too quickly.
What's the best way to store leftovers?
Store the cooked beef and celery separately in airtight containers for up to 4 days in the fridge. When reheating, combine with fresh rice and sauce over medium heat for 1-2 minutes
Can I make this recipe in a slow cooker?
Not recommended! This dish relies on quick, high-heat stir-frying to keep the celery crisp and beef tender. A slow cooker would turn the celery into mush and dry out the beef. For a similar flavor profile, try braising the beef with the sauce (without celery) for 2-3 hours on low heat, then serving with fresh celery on the side.
