In a large pot over medium-high heat, heat the oil. Add the carrots, celery, and onion. Cook, stirring occasionally, until tender, about 7 minutes. Add the garlic, and cook for 1 minute.
Add the ground beef. Cook, breaking up the meat while stirring frequently until browned, about 5 minutes.
Pour in the wine, scraping the bottom of the pot to loosen any browned bits. Stir in the tomatoes, tomato paste, and bay leaf. Reduce the heat to low and bring to a simmer.
Partially cover, and cook for 2 hours, stirring occasionally.
Uncover, and continue simmering and stirring occasionally for an additional 1 hour, or until thickened.
Remove the bay leaf. Slowly stir in the milk, until fully combined. Stir in the salt and pepper. Remove from the heat and cover to keep warm.
Bring a large pot of salted water to a boil and cook the pasta according to package directions.
Add the cooked and drained pasta to the meat mixture, tossing well to combine. Serve immediately topped with parmesan cheese.
