RecipeAI
DashboardDiscoverMeal PlanGroceriesCreateImportRecipe Box
BlogSign InGet Started
Dashboard
Plan
Nutrition
Create
Groceries
Saved
Profile
RecipeAI LogoRecipeAI

AI-powered recipes, meal plans, and nutrition tracking — personalized to your tastes and goals.

Explore

  • Discover Recipes
  • Categories
  • World Cuisines
  • Diets
  • Quick Meals
  • Meal Plans by Diet
  • Kitchen Conversions
  • Calories in Foods

Features

  • AI Recipe Generator
  • Meal Planning
  • Nutrition Tracker
  • Macro Calculator
  • Nutrition Guides
  • Food Diary
  • Recipe Import
  • Pricing

Resources

  • Blog
  • About Us
  • Feedback

© 2026 RecipeAI. All rights reserved.

Cook smarter, eat better.

More recipes like this

  • Italian Turkey Bolognese over Zucchini Noodles (Zoodles)
  • Leftover Turkey Bolognese over Warm Zucchini Noodles (Quick, Restaurant-Style)
  • Turkey Bolognese over Zucchini Noodles with Basil-Pine Nut Pesto
  • Italian Zucchini Noodle Bolognese (Beef)
  • Miso-Butter Pan-Seared Sea Bass with Sesame Zucchini Noodles & Quick‑Steamed Baby Bok Choy
  • Korean-Style Bulgogi Beef Lettuce Wraps with Quick Kimchi-Cucumber Salad & Sweet Potato Noodles
  • Browse all recipes →
Zucchini Noodles with Beef Bolognese & Roasted Asparagus

Zucchini Noodles with Beef Bolognese & Roasted Asparagus

By Tracy Lessard

ItalianIntermediate

A light, Italian-inspired weeknight dinner that feels restaurant-worthy: rich, slow-simmered beef Bolognese brightened with fresh basil and oregano, served over tender-crisp spiralized zucchini noodles and paired with oven-roasted asparagus for a satisfying contrast of textures. The savory, caramelized beef sauce and bright herbs make every bite deeply flavorful while the zucchini keeps the dish fresh and low-carb.

Prep: 20 minutes
Cook: 30 minutes
Total: 50 minutes
4 servings
DinnerLow-CarbItalianOne-Pan SauceVegetable-Focused

Ingredients

  • 1 lb (16 oz / 454 g) Ground beef (80/20)
  • 4 medium (about 784 g total) Zucchini, spiralized
  • 1 can (14 oz / 398 g) Crushed tomatoes, no added sugar
  • 1 small, diced (about 70 g) Onion, small
  • 2 cloves, minced (about 6 g) Garlic
  • 1 bunch (about 12 oz / 340 g) Asparagus
  • 2 tbsp (30 ml) Olive oil
  • 1/4 cup, torn (about 6 g) Fresh basil
  • 1 tbsp, chopped (about 1 g) Fresh oregano

Instructions

1

Preheat the oven to 425°F (220°C). Line a rimmed baking sheet with foil or parchment and set a rack in the center. Hot oven and a rimmed sheet concentrate heat for quick, even roasting—this gives the asparagus charred tips without drying them out.

2

Trim the asparagus: snap or cut off the woody ends (about the bottom 1–1½ inches). Toss the spears with 1 tablespoon of olive oil, a generous pinch of salt and pepper, and spread them in a single layer on the prepared sheet. Coating with oil helps conduct heat and promotes even browning.

3

Roast the asparagus for 8–12 minutes, depending on thickness, until bright green, tender-crisp, and lightly charred at the tips. Start checking at 8 minutes to avoid overcooking; you want snap and color, not mush.

4

While the asparagus roasts, heat a 12-inch (30 cm) skillet or sauté pan over medium-high heat. Add the remaining 1 tablespoon of olive oil. Heating the pan first ensures a good sear on the beef and browning on the onion, which builds deep flavor from the Maillard reaction.

5

Add the diced onion and a pinch of salt to the hot oil and cook, stirring occasionally, for 3–4 minutes until translucent and beginning to soften. The salt draws moisture from the onion so it softens evenly; don’t let it burn—reduce heat slightly if it darkens too fast.

6

Add the minced garlic and cook 30–45 seconds until fragrant. Garlic browns quickly; brief cooking releases the aromatic oils without turning bitter.

7

Push the onion and garlic to the side and add the ground beef in an even layer. Let it sear undisturbed for 2–3 minutes to develop a brown crust (fond)—this concentrated flavor will enrich the sauce. Break the beef into pieces after it has had a chance to brown, then continue cooking until no pink remains, about 3–4 more minutes.

8

Season the browned beef with salt and several grinds of black pepper. Stir everything together to combine the browned bits from the bottom of the pan into the meat; those bits carry concentrated flavor into the sauce.

9

Pour in the crushed tomatoes and stir to combine. Scrape the bottom of the pan to release any fond. Bring the mixture to a gentle simmer, then reduce heat to low and simmer uncovered for 10–12 minutes to concentrate and thicken the sauce—this deepens the tomato flavor and mellows raw acidity.

10

Stir in most of the torn basil (reserve a little for garnish) and the chopped oregano in the final 2 minutes of simmering. Fresh herbs added at the end retain their bright aroma and flavor—too early and they lose vibrancy.

11

While the sauce finishes, prepare the zucchini noodles. Place spiralized zucchini in a colander, sprinkle lightly with 1/4 teaspoon salt, toss, and let them sit for 5 minutes. This draws excess water out and prevents soggy noodles. After 5 minutes, very gently squeeze handfuls in a clean kitchen towel or paper towels to remove extra moisture.

12

Warm a large nonstick skillet over medium-high heat. Add the zucchini in a single layer (work in two batches if needed) and sauté for 1–2 minutes—just to warm and remove any remaining surface moisture. Quick cooking preserves bite and keeps noodles from becoming mushy; you want them al dente. Do not overcook.

13

To serve: pile a portion of warm zucchini noodles on each plate, spoon 1/4 of the beef Bolognese over the top, and arrange roasted asparagus alongside (or slice the asparagus on the bias and toss with the noodles and sauce). Finish with the reserved basil, a drizzle of any pan juices, and a grind of black pepper.

14

Taste and adjust seasoning at the table. If you prefer a richer finish, a small knob of butter or a drizzle of extra virgin olive oil stirred into the hot sauce just before serving adds silkiness (optional).

Chef's Tips

  • 1Don’t over-salt the zucchini early: a light sprinkle draws moisture, but heavy salting will make the noodles limp. Pat them dry after salting to control texture.
  • 2Brown the beef without constantly stirring so it develops a caramelized crust (fond). That fond is the flavor base for the sauce—scrape it into the tomatoes for depth.
  • 3If your sauce tastes a little sharp after adding the tomatoes, simmer a few more minutes to mellow the acidity; you can also add a tiny pinch (1/8 tsp) of baking soda to neutralize acidity, but use sparingly.

Variations

  • Mushroom & Pork Twist: Replace half the ground beef with ground pork and add 6 oz sliced cremini mushrooms when you add the onion for an earthier, slightly sweeter sauce.
  • Spicy Kick: Add 1/4–1/2 tsp red pepper flakes when cooking the onion, or finish with a few drops of Calabrian chili oil for heat and complexity.
  • Cheesy Finish (optional): If you aren't strictly low-carb, finish with freshly grated Parmigiano-Reggiano or Pecorino Romano for a salty, nutty lift.

Nutrition per Serving

437

Calories

26g

Protein

17g

Carbs

31g

Fat

6g

Fiber

Rate this Recipe

How did this recipe turn out? Let others know!

to rate this recipe

Zucchini Noodles with Beef Bolognese & Roasted Asparagus

By Tracy Lessard

DinnerLow-CarbItalianOne-Pan SauceVegetable-Focused
Zucchini Noodles with Beef Bolognese & Roasted Asparagus - Ground beef (80/20), Zucchini, spiralized recipe

A light, Italian-inspired weeknight dinner that feels restaurant-worthy: rich, slow-simmered beef Bolognese brightened with fresh basil and oregano, served over tender-crisp spiralized zucchini noodles and paired with oven-roasted asparagus for a satisfying contrast of textures. The savory, caramelized beef sauce and bright herbs make every bite deeply flavorful while the zucchini keeps the dish fresh and low-carb.

ItalianIntermediate4 servings
Prep: 20 minutes
Cook: 30 minutes
50 minutes

Ingredients

  • 1 lb (16 oz / 454 g) Ground beef (80/20)
  • 4 medium (about 784 g total) Zucchini, spiralized
  • 1 can (14 oz / 398 g) Crushed tomatoes, no added sugar
  • 1 small, diced (about 70 g) Onion, small
  • 2 cloves, minced (about 6 g) Garlic
  • 1 bunch (about 12 oz / 340 g) Asparagus
  • 2 tbsp (30 ml) Olive oil
  • 1/4 cup, torn (about 6 g) Fresh basil
  • 1 tbsp, chopped (about 1 g) Fresh oregano

Instructions

1

Preheat the oven to 425°F (220°C). Line a rimmed baking sheet with foil or parchment and set a rack in the center. Hot oven and a rimmed sheet concentrate heat for quick, even roasting—this gives the asparagus charred tips without drying them out.

2

Trim the asparagus: snap or cut off the woody ends (about the bottom 1–1½ inches). Toss the spears with 1 tablespoon of olive oil, a generous pinch of salt and pepper, and spread them in a single layer on the prepared sheet. Coating with oil helps conduct heat and promotes even browning.

3

Roast the asparagus for 8–12 minutes, depending on thickness, until bright green, tender-crisp, and lightly charred at the tips. Start checking at 8 minutes to avoid overcooking; you want snap and color, not mush.

4

While the asparagus roasts, heat a 12-inch (30 cm) skillet or sauté pan over medium-high heat. Add the remaining 1 tablespoon of olive oil. Heating the pan first ensures a good sear on the beef and browning on the onion, which builds deep flavor from the Maillard reaction.

5

Add the diced onion and a pinch of salt to the hot oil and cook, stirring occasionally, for 3–4 minutes until translucent and beginning to soften. The salt draws moisture from the onion so it softens evenly; don’t let it burn—reduce heat slightly if it darkens too fast.

6

Add the minced garlic and cook 30–45 seconds until fragrant. Garlic browns quickly; brief cooking releases the aromatic oils without turning bitter.

7

Push the onion and garlic to the side and add the ground beef in an even layer. Let it sear undisturbed for 2–3 minutes to develop a brown crust (fond)—this concentrated flavor will enrich the sauce. Break the beef into pieces after it has had a chance to brown, then continue cooking until no pink remains, about 3–4 more minutes.

8

Season the browned beef with salt and several grinds of black pepper. Stir everything together to combine the browned bits from the bottom of the pan into the meat; those bits carry concentrated flavor into the sauce.

9

Pour in the crushed tomatoes and stir to combine. Scrape the bottom of the pan to release any fond. Bring the mixture to a gentle simmer, then reduce heat to low and simmer uncovered for 10–12 minutes to concentrate and thicken the sauce—this deepens the tomato flavor and mellows raw acidity.

10

Stir in most of the torn basil (reserve a little for garnish) and the chopped oregano in the final 2 minutes of simmering. Fresh herbs added at the end retain their bright aroma and flavor—too early and they lose vibrancy.

11

While the sauce finishes, prepare the zucchini noodles. Place spiralized zucchini in a colander, sprinkle lightly with 1/4 teaspoon salt, toss, and let them sit for 5 minutes. This draws excess water out and prevents soggy noodles. After 5 minutes, very gently squeeze handfuls in a clean kitchen towel or paper towels to remove extra moisture.

12

Warm a large nonstick skillet over medium-high heat. Add the zucchini in a single layer (work in two batches if needed) and sauté for 1–2 minutes—just to warm and remove any remaining surface moisture. Quick cooking preserves bite and keeps noodles from becoming mushy; you want them al dente. Do not overcook.

13

To serve: pile a portion of warm zucchini noodles on each plate, spoon 1/4 of the beef Bolognese over the top, and arrange roasted asparagus alongside (or slice the asparagus on the bias and toss with the noodles and sauce). Finish with the reserved basil, a drizzle of any pan juices, and a grind of black pepper.

14

Taste and adjust seasoning at the table. If you prefer a richer finish, a small knob of butter or a drizzle of extra virgin olive oil stirred into the hot sauce just before serving adds silkiness (optional).

Chef's Tips

  • 1Don’t over-salt the zucchini early: a light sprinkle draws moisture, but heavy salting will make the noodles limp. Pat them dry after salting to control texture.
  • 2Brown the beef without constantly stirring so it develops a caramelized crust (fond). That fond is the flavor base for the sauce—scrape it into the tomatoes for depth.
  • 3If your sauce tastes a little sharp after adding the tomatoes, simmer a few more minutes to mellow the acidity; you can also add a tiny pinch (1/8 tsp) of baking soda to neutralize acidity, but use sparingly.

Variations

  • Mushroom & Pork Twist: Replace half the ground beef with ground pork and add 6 oz sliced cremini mushrooms when you add the onion for an earthier, slightly sweeter sauce.
  • Spicy Kick: Add 1/4–1/2 tsp red pepper flakes when cooking the onion, or finish with a few drops of Calabrian chili oil for heat and complexity.
  • Cheesy Finish (optional): If you aren't strictly low-carb, finish with freshly grated Parmigiano-Reggiano or Pecorino Romano for a salty, nutty lift.

Nutrition per Serving

437

Calories

26g

Protein

17g

Carbs

31g

Fat

6g

Fiber

Rate this Recipe

Your Rating:

Explore More

🌍 Italian Recipes🥗 Low-Carb Recipes🥘 More with Ground beef (80/20)🥘 More with Zucchini, spiralized🥘 More with Crushed tomatoes, no added sugar

Similar Recipes