Bring a large pot of salted water to a boil. Add the spaghetti and cook according to the package instructions until al dente. Drain and set aside.
Prepare the Bolognese Sauce:
In a large skillet or saucepan, heat the olive oil over medium heat.
Add the chopped onion and cook until softened and translucent, about 5 minutes.
Add the minced garlic, diced carrots, and diced celery. Cook for another 5 minutes until the vegetables are tender.
Add the ground beef to the skillet. Cook, breaking it up with a wooden spoon, until browned and cooked through.
Stir in the chopped tomatoes, tomato paste, beef broth, and red wine (if using).
Add the dried oregano, dried basil, and bay leaf. Season with salt and pepper to taste.
Bring the sauce to a simmer. Reduce the heat to low and let it simmer gently for at least 30 minutes, stirring occasionally. The longer you let it simmer, the better the flavors will meld.
Combine and Serve:
Discard the bay leaf from the sauce.
Toss the cooked spaghetti with the Bolognese sauce until well coated.
Serve the spaghetti Bolognese topped with freshly grated Parmesan cheese and garnished with fresh basil or parsley if desired.
Tips:
For a richer flavor, you can add a splash of milk or cream to the Bolognese sauce.
This dish pairs well with a simple green salad and garlic bread.
Leftover Bolognese sauce can be stored in the refrigerator for up to 3 days or frozen for up to 3 months.