Heat olive oil in a large, deep skillet or Dutch oven over medium heat. Add the onion, carrot, and celery, cooking for about 5–7 minutes until softened.
Add the garlic and cook for another minute until fragrant.
Add the ground beef and pork, breaking it up with a wooden spoon. Cook until browned all over, about 8–10 minutes. Drain excess fat if needed.
Stir in the tomato paste and cook for 2 minutes to deepen the flavor.
Pour in the red wine and let it simmer for 3–4 minutes until mostly absorbed.
Add the crushed tomatoes, oregano, basil, salt, and pepper. Stir well to combine.
Reduce heat to low, pour in the milk, and stir. Let the sauce simmer uncovered for 45–60 minutes, stirring occasionally, until thick and rich.
Meanwhile, cook spaghetti according to package directions until al dente. Reserve 1/2 cup of pasta water before draining.
Toss the drained spaghetti with the sauce, adding a splash of pasta water to help everything coat evenly.
Serve topped with freshly grated Parmesan and fresh basil if desired.