
- 1 tablespoon good-quality extra virgin olive oil
- 3 tablespoons unsalted butter, plus 1 tablespoon for tossing the pasta
- 1 cup finely chopped yellow onion
- 1 cup finely chopped celery
- 1 cup finely chopped carrot
- ½ pound ground pork sausage
- ½ pound ground veal
- 1 pound ground beef chuck
- 3 tablespoons tomato paste
- 5 sprigs fresh thyme, tied with kitchen twine
- 1 or 2 bay leaves, fresh or dried
- Freshly grated nutmeg (about ⅛ teaspoon)
- 1 teaspoon dried oregano
- ¼ teaspoon dried red pepper flakes
- 1 cup whole milk
- 1 cup dry white wine
- 1 can (28 ounces) whole peeled tomatoes, pureed (with juice) in a blender or food mill
- 4 cups chicken stock
- 1¼ to 1½ pounds dried pasta, such as tagliatelle or rigatoni
- Kosher salt and freshly ground black pepper
- Freshly grated Parmigiano-Reggiano cheese, for serving of course!
Step 1: Build the Flavour Base
In a large, heavy-bottomed pot or Dutch oven, heat the olive oil and 3 tablespoons of butter over medium heat. Add the onion and cook, stirring occasionally, until translucent—about 5 minutes. Stir in the celery and carrot, cooking for another 3-4 minutes until softened.
Step 2: Brown the Meat
Add the ground pork sausage, veal, and beef. Season with a large pinch of kosher salt and several grinds of black pepper. Use a wooden spoon or fork to break the meat into small pieces. Cook, stirring occasionally, until the meats lose their raw colour and just begin to brown—about 8-10 minutes.
Step 3: Add Seasonings and Tomato Paste
Stir in the tomato paste, dried oregano, and red pepper flakes. Let the mixture cook for 2 minutes to deepen the flavours. Add the thyme bundle and bay leaves, nestling them into the sauce.
Step 4: Add the Wine
Pour in the wine to deglaze the pan and let it simmer gently, stirring frequently, until it has almost completely evaporated—about 10 minutes.
Step 5: Tomatoes, Stock and Milk
Stir in the pureed tomatoes, chicken stock, and milk, ensuring everything is thoroughly combined. Once the mixture starts to bubble, reduce the heat to very low. Let the sauce simmer with the lid ajar for 3 to 4 hours. It should cook at a lazy, intermittent bubble, stirring occasionally. If the sauce begins to dry out, add a splash more milk or chicken stock as needed. By the end, the sauce should be thick, rich, and the fat will have slightly separated—skim a few tablespoons of the fat off but leave about half and stir it back in for maximum flavour. If you stick a wooden spoon in the middle of the pot, the wooden spoon should stand up on its own; if it does, you know the sauce is done! Taste and adjust for salt.
Step 6: Toss and Serve
Cook the pasta in a large pot of well-salted water until al dente. Drain and toss with the Bolognese sauce, adding the final tablespoon of butter for a silky finish. Serve immediately in warm bowls with freshly grated Parmigiano-Reggiano on the side.

To Serve: This sauce pairs beautifully with tagliatelle or rigatoni—something that will hold all that rich, meaty goodness. Serve with a peppery arugula salad and a glass of Chianti for an effortless yet unforgettable meal.
Pro Tip: Make a double batch and freeze portions for future dinners. This sauce only gets better as it sits, so it’s perfect for hosting or cozy nights at home.
“How easy is that? Rich, slow-cooked, and bursting with flavour, this Bolognese will make everyone feel like they’re dining in the heart of Italy.”