This rich, slow-simmered Bolognese is thick, savory, and comforting — with tender browned beef, soft carrots and celery, bright tomato, a touch of red wine, and a bit of milk for silkiness. The texture is hearty yet smooth, clinging to pasta and carrying plenty of flavor in every forkful. It’s easy because most of the work is low and slow simmering; a short hands-on start, then patience. Serve it simply over your favorite pasta with grated Parmesan and fresh basil, or spoon it into a baked pepper or on toast for a cozy meal. If you want a soft, buttery bread at the table, try pairing it with a braided brioche like this braided chocolate chip brioche recipe for a special touch.
Why You’ll Love This How to Make Bolognese Sauce
- Deep, layered flavor from simple pantry ingredients: onion, carrot, celery, beef, tomatoes, and a splash of red wine.
- Thick, clingy texture that coats pasta without feeling oily.
- Hands-off once it’s simmering — let it cook low while you do other things.
- Straightforward ingredients you likely already have on hand.
- Milk added at the end gives a soft, rounded finish and cuts acidity.
- Versatile: serve over pasta, spoon into lasagna, or use as a meat sauce for sandwiches.
- Easy to scale up for meal prep or freeze for later.
- Fresh basil and Parmesan lift the dish at the last minute with little effort.
What Is How to Make Bolognese Sauce?
Bolognese is a meat-forward Italian sauce that focuses on slowly cooked ground beef with aromatics and tomatoes. This version is hearty and balanced: the beef gives depth and body, the mirepoix (onion, carrot, celery) brings a gentle sweetness, crushed tomatoes add body and acidity, red wine adds a savory edge, and milk brings creaminess at the finish. The cooking method is stovetop simmering — start over medium heat to brown, then reduce to low for a long, gentle cook. The vibe is pure comfort food: good for a weeknight if you have an hour to spare, and even better made ahead for weekend dinners.
Ingredients for How to Make Bolognese Sauce
For the Base
- 2 tablespoons olive oil
- 1 onion, chopped
- 2 garlic cloves, minced
- 1 carrot, finely diced
- 1 celery stalk, finely diced
For the Sauce
- 1 pound ground beef
- 1 can (14 ounces) crushed tomatoes
- 1/2 cup red wine
- 1 teaspoon dried oregano
- 1 bay leaf
- Salt and pepper to taste
- 1/2 cup whole milk
To Serve
- Fresh basil for garnish
- Grated Parmesan cheese for serving
Ingredient Notes (Substitutions, Healthy Swaps)
- Ground beef: Use leaner ground beef for less fat, but keep in mind very lean beef can be drier. Optional: substitute ground turkey or chicken for a lighter version; cook a bit more carefully to avoid drying.
- Crushed tomatoes: If you only have whole or diced tomatoes, pulse diced tomatoes briefly or crush by hand. Tomato sauce can be used but expect a smoother texture and slightly different flavor.
- Red wine: Optional for deglazing and depth — you can replace it with beef or chicken broth if you prefer no alcohol.
- Whole milk: This softens the acidity and adds body. For a lighter swap, use 2% milk (texture will be slightly less rich). Do not skip entirely; the dish will taste sharper without it.
- Olive oil: Can use neutral oil if desired, but olive oil adds flavor.
- Parmesan: Not required, but a small amount grated over each serving adds salty, savory brightness.
Step-by-Step Instructions
Step 1 – Sauté the aromatics
Heat 2 tablespoons olive oil in a large skillet over medium heat. Add the chopped onion, minced garlic, finely diced carrot, and finely diced celery. Sauté until the vegetables soften and the onions are translucent, about 5–7 minutes.
Visual cue: The vegetables should look glossy and soft, not browned or crisp.
Step 2 – Brown the ground beef
Add 1 pound ground beef to the skillet. Break it apart with a spoon and cook until fully browned and no pink remains, about 6–8 minutes. Drain excess fat if you prefer a leaner sauce.
Pro cue: Break the meat into small pieces for a classic Bolognese texture that clings to pasta.
Step 3 – Add tomatoes, wine, and seasonings
Stir in 1 can (14 ounces) crushed tomatoes, 1/2 cup red wine, 1 teaspoon dried oregano, 1 bay leaf, and salt and pepper to taste. Bring the mixture to a gentle simmer over medium heat.
Visual cue: You should see small bubbles around the edges once it reaches a simmer.
Step 4 – Simmer low and slow
Reduce the heat to low, cover partially, and let the sauce cook on low for at least 1 hour. Stir occasionally to prevent sticking and to help flavors meld.
Pro cue: A long, gentle simmer deepens flavor. If it thickens too quickly, add a splash of water or broth.
Step 5 – Finish with milk and final cook
Stir in 1/2 cup whole milk and continue to cook on low for an additional 30 minutes. Taste and adjust salt and pepper. Remove the bay leaf before serving.
Visual cue: The sauce will become creamier and slightly lighter in color after the milk is fully incorporated.
Step 6 – Serve
Serve over cooked pasta and garnish with fresh basil and generous grated Parmesan cheese. Enjoy immediately.

Pro Tips for Success
- Use medium heat for the initial sauté to soften vegetables without burning them. Burnt aromatics make the sauce bitter.
- Break the beef into small crumbs while browning for even texture and better integration with the sauce.
- Deglaze the pan with the red wine, scraping up browned bits — that adds flavor. Let alcohol cook off for a few minutes.
- Keep the simmer low and steady; a vigorous boil will evaporate liquids too fast and can toughen the meat.
- Stir occasionally, especially near the end, to prevent sticking and to check thickness.
- Add the milk last and keep simmering gently; this prevents curdling and gives a smooth finish.
- Season gradually. Tomatoes can taste flat before long cooking, so taste at the end and correct salt and pepper.
- If sauce tastes acidic, a small pinch of sugar or a splash more milk balances it.
Flavor Variations
- OPTIONAL — Mushroom Bolognese: Add 1 cup chopped mushrooms with the aromatics for extra umami.
- OPTIONAL — Herb-forward: Stir in 1 teaspoon chopped fresh thyme or rosemary in the last 20 minutes for earthy notes.
- OPTIONAL — Spicy: Add 1/4 teaspoon red pepper flakes with the tomatoes for a gentle heat.
- OPTIONAL — Creamier: Stir in 2 tablespoons butter at the end for a silkier finish.
- OPTIONAL — Vegetable boost: Stir in 1 cup chopped spinach at the very end until wilted to add color and nutrients.
- OPTIONAL — Cheese enrich: Mix in 2 tablespoons mascarpone when you add the milk for a richer sauce.
Serving Suggestions
- Toss with tagliatelle, pappardelle, or any wide pasta that holds sauce well.
- Spoon between lasagna sheets for a simple lasagna night.
- Serve with a crisp green salad and a squeeze of lemon on the side to cut richness.
- Use as a topping for baked potatoes or polenta for a cozy meal.
- Make meatball sliders: warm sauce + small meatballs on toasted rolls with extra Parmesan.
- Serve at a family dinner or casual dinner party; make ahead so flavors develop.
- Garnish each plate with fresh basil leaves and a shower of grated Parmesan.
Make-Ahead, Storage & Reheating
- Make-ahead: The sauce improves after resting. Make 1–2 days ahead and store in the fridge.
- Prep: Chop the onion, carrot, and celery and store them in a sealed container for up to 2 days before cooking.
- Storage duration (fridge): Keep in an airtight container for up to 4 days.
- Reheating: Reheat gently on the stovetop over low heat, stirring often; add a splash of water or broth if the sauce has thickened. Reheat only once for best quality.
- Texture note: The sauce will thicken as it cools. Add liquid when reheating to restore a loose, forkable texture.
Storage and Freezing Instructions
- Cool the sauce completely before freezing.
- Freeze in meal-size portions in freezer-safe containers or zip-top bags (remove excess air).
- Freeze up to 3 months for best flavor and texture.
- To use, thaw overnight in the fridge, then reheat gently on the stove. If reheating from frozen, thaw in a pot over low heat with a splash of water, covered, until fully thawed and warmed through.
- Freezing is recommended for this sauce. It holds up well because of its tomato and fat content. If you must avoid freezing, refrigerate and use within 4 days.
Nutrition Facts (Per Serving)
Calories | Protein | Carbs | Fat | Fiber | Sodium
— | —: | —: | —: | —: | —:
Approx. 440 kcal | 24 g | 11 g | 29 g | 2 g | 520 mg
Estimates vary by brands and portions.
FAQ About How to Make Bolognese Sauce
Q: Why is my sauce too watery?
A: Either simmering was too short or the heat was too low to reduce liquids. Cook uncovered on low, stirring occasionally, until it thickens. Add a brief boil to reduce quicker, then lower heat.
Q: How long should I cook Bolognese for best flavor?
A: At least 1 hour on low, plus 30 minutes after adding milk, as the recipe states. Longer (up to 2 hours) can deepen flavor if you keep an eye on liquid levels.
Q: Can I make this without red wine?
A: Yes. Substitute an equal amount of beef or chicken broth. The wine adds depth but is not essential.
Q: How do I know when the beef is done?
A: The beef should be fully browned with no pink bits left and somewhat broken into small pieces. Taste a small bit; it should be tender and integrated into the sauce.
Q: Can I skip the milk at the end?
A: You can, but the milk gives a rounded, less acidic finish and a smoother mouthfeel. If you skip it, consider a small pat of butter to add richness.
Q: Is this recipe freezer-friendly?
A: Yes. Cool, portion, and freeze for up to 3 months. Thaw overnight in the fridge before reheating for best results.
Notes
- Let the sauce rest 10–15 minutes off heat before serving; flavors meld and it thickens slightly.
- For extra shine, stir in 1 tablespoon olive oil or butter just before serving.
- Grate fresh Parmesan at the table for the best salty finish.
- Save pasta cooking water to loosen the sauce if needed — 1–2 tablespoons can help bind sauce to pasta.
- Remove the bay leaf and taste for final salt and pepper before plating.
Troubleshooting
- Bland flavor: Simmer longer and finish with milk or a pinch of salt. A splash of red wine or a small pinch of sugar can balance acidity.
- Sauce too thick: Stir in reserved pasta water, broth, or a splash of milk while reheating to loosen.
- Sauce too thin: Simmer uncovered until reduced to your desired thickness.
- Burnt bottom: Immediately remove from heat and transfer sauce to a clean pot. Do not scrape burned bits into the unaffected sauce.
- Meat not tender: Simmer gently longer; a brief increase in water or broth can prevent drying while still allowing slow cooking.
- Curled or separated milk: If milk is added over high heat, it can separate. Always add milk on low and simmer gently.
Final Thoughts
This Bolognese is simple, forgiving, and deeply satisfying. A bit of patience gives you a silky, savory sauce that pairs with many sides and keeps well for make-ahead meals. Follow the steps, simmer low, finish with milk, and enjoy a classic dish that feels like home.
Conclusion
For a different take and more technique notes, see this helpful Kitchn Bolognese Sauce Recipe (The BEST Ever!) which offers extra tips on developing deep flavor and texture.

Bolognese Sauce
Ingredients
For the Base
- 2 tablespoons olive oil
- 1 medium onion, chopped
- 2 cloves garlic, minced
- 1 medium carrot, finely diced
- 1 stalk celery, finely diced
For the Sauce
- 1 pound ground beef Use leaner ground beef for less fat.
- 1 can (14 ounces) crushed tomatoes Can use whole or diced tomatoes if needed.
- 1/2 cup red wine Optional; can be substituted with broth.
- 1 teaspoon dried oregano
- 1 leaf bay leaf Remove before serving.
- to taste Salt and pepper Season gradually as flavors develop.
- 1/2 cup whole milk Softens acidity; do not omit.
To Serve
- Fresh basil for garnish
- Grated Parmesan cheese for serving Adds salty brightness.
Instructions
Preparation
- Heat 2 tablespoons of olive oil in a large skillet over medium heat. Add the chopped onion, minced garlic, finely diced carrot, and finely diced celery. Sauté until the vegetables soften and the onions are translucent, about 5–7 minutes.
- Add 1 pound of ground beef to the skillet, breaking it apart with a spoon. Cook until fully browned, about 6–8 minutes. Drain excess fat if desired.
- Stir in 1 can of crushed tomatoes, 1/2 cup of red wine, 1 teaspoon of dried oregano, and season with salt and pepper to taste. Bring to a simmer over medium heat.
Cooking
- Reduce heat to low, partially cover, and let the sauce cook for at least 1 hour, stirring occasionally.
- After 1 hour, stir in 1/2 cup of whole milk and cook for an additional 30 minutes. Taste and adjust seasoning as needed, then remove the bay leaf.
Serving
- Serve the Bolognese sauce over your favorite pasta and garnish with fresh basil and grated Parmesan cheese.
