Beef Bolognese with Spaghetti

Close-up of rich, slow-simmered Beef Bolognese sauce ladled over al dente spaghetti, garnished with fresh basil and Parmesan cheese. Save to Pinterest
Close-up of rich, slow-simmered Beef Bolognese sauce ladled over al dente spaghetti, garnished with fresh basil and Parmesan cheese. | homegrownfork.com

This classic Italian dish features a rich, slow-cooked beef and tomato sauce simmered with aromatic vegetables, herbs, and a splash of red wine. The sauce is finished with milk for creaminess and served over al dente spaghetti. Garnished with freshly grated Parmesan and basil leaves, it offers a comforting and flavorful meal perfect for any occasion.

There's something about the smell of softened onions and carrots hitting hot olive oil that signals the start of something good. My first proper bolognese came together on a Tuesday night when I had time to actually watch the pot instead of rushing through dinner, and somewhere between the second glass of wine going into the pan and the milk stirring in at the end, I understood why this dish has endured for generations. It's not fancy or complicated, but it rewards patience with a sauce that tastes like it's been simmering all afternoon even though you've only given it an hour and a half.

I made this for my partner on a rainy Sunday when we'd both had the kind of week where takeout felt inevitable, and watching their face when they tasted it—that moment when comfort food actually delivers on the promise—reminded me that good cooking doesn't require restaurant prices or three hours at the stove.

Ingredients

  • Ground beef (500g, preferably 80/20): The fat ratio matters here; too lean and your sauce tastes thin, too fatty and it feels heavy. The 80/20 split gives you flavor without grease.
  • Onion, carrot, and celery: This trio—the soffritto—is the foundation of everything that follows. Dice them small so they melt into the sauce rather than announce themselves as chunks.
  • Garlic (3 cloves, minced): Add it after the vegetables soften so it doesn't burn; burnt garlic tastes bitter and ruins the whole thing.
  • Olive oil (2 tbsp): Good enough to taste, but not your fancy finishing oil—save that for drizzling later.
  • Canned crushed tomatoes (800g): This is non-negotiable; fresh tomatoes are beautiful in July, but year-round consistency comes from quality canned.
  • Tomato paste (2 tbsp): Stir it into the beef and let it caramelize for a minute before adding liquid; this step deepens the entire flavor profile.
  • Dry red wine (125ml): The alcohol cooks off, leaving behind tannins and acidity that balance the richness. Skip the expensive bottle, but don't use something you wouldn't drink.
  • Whole milk (125ml): This sounds odd until you taste it. It rounds out the acidity and adds a silkiness that tomato sauce alone can't achieve.
  • Oregano and basil (1 tsp each, dried): Dried herbs work better here than fresh; they distribute evenly and don't get lost in a long simmer.
  • Bay leaf: One leaf, nothing more. It adds a whisper of flavor and must come out before serving.
  • Salt and black pepper: Taste as you go, especially after adding the milk, as it can muffle the seasoning.
  • Spaghetti (400g): Cook it al dente so it has some resistance; it will soften slightly when you toss it with the sauce.
  • Parmesan cheese and fresh basil: The garnish is where you let the good cheese shine, grated fresh while the pasta is still hot.

Instructions

Build your base:
Heat the olive oil in a large heavy-bottomed pan over medium heat, then add the finely chopped onion, diced carrot, and celery. You want these to soften and turn translucent over 7 to 8 minutes, which is longer than you'd think but essential; this is where the sweetness develops. Stir occasionally so nothing catches or browns too fast.
Wake up the garlic:
Once the vegetables have softened, add the minced garlic and cook for just one minute, stirring frequently so it becomes fragrant without turning bitter. You'll smell the difference immediately—it sharpens everything in a good way.
Brown the beef:
Turn the heat up to medium-high and add the ground beef, breaking it apart with a wooden spoon as it cooks. This takes about 6 to 8 minutes; you're looking for no pink remaining and a bit of browning on the bottom of the pan. Don't rush this step; the deeper the browning, the more complex your sauce will taste.
Deepen with paste:
Stir in the tomato paste and let it cook undisturbed for about 2 minutes, allowing it to caramelize slightly against the hot pan. This concentrated tomato flavor is what makes the difference between a good sauce and one that tastes thin and watery.
Deglaze with wine:
Pour in the red wine, scraping up all the browned bits stuck to the bottom of the pan with your spoon. Let it simmer for 2 to 3 minutes until the sharp alcohol smell fades and you're left with something mellow.
Add the tomatoes and herbs:
Stir in the crushed tomatoes, dried oregano, dried basil, and the single bay leaf. Season with salt and pepper, then bring everything to a gentle simmer. The surface should bubble slowly and steadily, not aggressively.
Slow simmer:
Reduce the heat to low, partially cover the pan, and let it bubble away for 50 to 60 minutes. Stir it every 10 minutes or so; you're not watching it constantly, just checking in. The sauce will darken slightly, thicken, and smell increasingly incredible.
Finish with milk:
After the long simmer, stir in the whole milk and continue simmering gently for another 10 minutes. The sauce will lighten slightly and become noticeably smoother. Taste it now and adjust the salt and pepper if needed; the milk can mute flavors slightly, so you may need a bit more seasoning.
Cook the pasta:
While the sauce is doing its final simmer, bring a large pot of salted water to a rolling boil. Add the spaghetti and cook it according to the package instructions, usually 9 to 12 minutes, until it's al dente—tender but still with a slight resistance when you bite it. Reserve a small cup of pasta water before draining.
Remove the bay leaf and combine:
Fish out the bay leaf from the sauce. Toss the drained spaghetti directly into the sauce or plate the pasta and ladle the sauce over it generously; either way works, but tossing it together means every strand gets coated. If the sauce seems too thick, splash in a bit of that reserved pasta water to loosen it slightly.
Plate and garnish:
Divide the spaghetti and sauce among bowls or plates, and finish each serving with freshly grated Parmesan cheese and a few torn basil leaves if you have them. Serve immediately while everything is hot.
A hearty bowl of Beef Bolognese with spaghetti, served with a glass of red wine and crusty bread on the side. Save to Pinterest
A hearty bowl of Beef Bolognese with spaghetti, served with a glass of red wine and crusty bread on the side. | homegrownfork.com

I learned the real power of this dish when someone I know who usually only eats salads came back for seconds, quiet and focused, the kind of hungry that isn't about being polite. That's when I realized bolognese isn't just food; it's a way of saying I have time for you, and what I make from that time matters.

Why This Sauce Is Different

Most quick tomato sauces rely on intensity to cover up their haste, but bolognese works differently. The long, gentle simmer allows the vegetables to practically dissolve into the sauce, the beef to release its deep savory notes, and the wine to fully integrate so you taste richness rather than alcohol burn. It's a sauce that builds rather than announces, and that transformation is where the magic lives.

Making It Ahead

One of the best things about bolognese is that it actually improves when you make it a day or two before serving. The flavors meld and deepen, and the sauce thickens further as it cools, so reheating it gently brings everything back to life tasting even better than the night you made it. You can refrigerate it for up to three days or freeze it for up to two months, which means you can build a small collection of sauces in your freezer for nights when cooking feels impossible.

Variations and Pairings

While this version is pure beef, you can substitute half the beef with ground pork or veal for something closer to a traditional ragù, which some people find lighter and more delicate. A robust red wine like Chianti or Sangiovese alongside dinner amplifies the flavors in the sauce, and a crusty bread for wiping plates is never wrong. Some cooks finish with a small knob of butter stirred in at the very end, which adds shine and extra richness if you're in the mood for indulgence.

  • Add a small knob of butter at the end of the final simmer for extra richness and shine.
  • If you have fresh herbs, tear basil and add it just before serving rather than cooking it in, so it stays bright and fragrant.
  • Save leftover sauce to serve over polenta, eggs, or even thick toast for entirely different meals.
Steaming plate of Beef Bolognese pasta featuring tender ground beef, tomatoes, and aromatic Italian herbs for a comforting family dinner. Save to Pinterest
Steaming plate of Beef Bolognese pasta featuring tender ground beef, tomatoes, and aromatic Italian herbs for a comforting family dinner. | homegrownfork.com

This is the kind of dish that quietly becomes a go-to, the one you make when you want to feel like you've cooked something real and honest. Once you understand how it comes together, you'll find yourself making it for Sunday dinners and unexpected guests, always with the same quiet satisfaction.

Recipe FAQs

Yes, substituting ground pork or veal for part of the beef creates a more traditional ragù with a slightly different flavor profile.

Cook the spaghetti in salted boiling water according to the package instructions, then test for a firm bite before draining.

Milk adds creaminess and helps soften the acidity of the tomatoes, resulting in a smoother sauce.

Yes, the sauce can be made in advance, refrigerated for up to 3 days, or frozen for up to 2 months without loss of flavor.

Robust Italian reds like Chianti or Sangiovese complement the rich flavors of the sauce and beef.

Beef Bolognese with Spaghetti

A hearty dish of ground beef and tomato sauce paired with perfectly cooked spaghetti.

Prep 15m
Cook 80m
Total 95m
Servings 4
Difficulty Medium

Ingredients

Meats

  • 1.1 lbs ground beef (80/20 ratio preferred)

Vegetables

  • 1 medium onion, finely chopped
  • 2 carrots, peeled and diced
  • 2 celery stalks, diced
  • 3 garlic cloves, minced

Pantry & Liquids

  • 2 tablespoons olive oil
  • 28 ounces canned crushed tomatoes
  • 2 tablespoons tomato paste
  • ½ cup dry red wine
  • ½ cup whole milk
  • 1 teaspoon dried oregano
  • 1 teaspoon dried basil
  • 1 bay leaf
  • Salt and freshly ground black pepper, to taste
  • 14 ounces dried spaghetti

Garnish

  • ¼ cup freshly grated Parmesan cheese
  • Fresh basil leaves (optional)

Instructions

1
Sauté vegetables: Heat olive oil in a large, heavy-bottomed pan over medium heat. Sauté onion, carrot, and celery for 7 to 8 minutes until soft and translucent.
2
Add garlic: Stir in minced garlic and cook for 1 minute, stirring frequently.
3
Brown beef: Increase heat to medium-high, add ground beef, and cook until browned, breaking it up with a spoon for 6 to 8 minutes.
4
Incorporate tomato paste: Stir in tomato paste and cook for 2 minutes to deepen the flavor.
5
Deglaze with wine: Pour in red wine and simmer for 2 to 3 minutes, scraping up any browned bits.
6
Add tomatoes and seasonings: Add crushed tomatoes, oregano, basil, bay leaf, salt, and pepper. Bring mixture to a gentle simmer.
7
Simmer sauce: Reduce heat to low, cover partially, and simmer for 50 to 60 minutes, stirring occasionally.
8
Finish sauce with milk: Stir in milk and continue simmering for another 10 minutes. Adjust seasoning if necessary.
9
Cook spaghetti: Meanwhile, cook spaghetti in a large pot of salted boiling water according to package instructions until al dente. Drain thoroughly.
10
Combine and serve: Remove bay leaf from sauce. Toss spaghetti with a portion of the sauce or plate spaghetti and ladle sauce generously atop. Garnish with Parmesan cheese and fresh basil if desired. Serve immediately.
Additional Information

Equipment Needed

  • Large heavy-bottomed pan or Dutch oven
  • Wooden spoon or spatula
  • Large pot for pasta
  • Colander
  • Chef's knife and cutting board
  • Grater for Parmesan cheese

Nutrition (Per Serving)

Calories 630
Protein 34g
Carbs 74g
Fat 21g

Allergy Information

  • Contains wheat (spaghetti) and milk (milk, Parmesan cheese). May contain sulfites (wine). For gluten-free, use appropriate pasta.
Amy Callahan

Down-to-earth cook sharing simple recipes and cooking tips for every home kitchen.