Heat olive oil in a large pot or Dutch oven over medium heat. Add ground beef and cook, breaking it up with a spoon, until browned. Drain off any excess grease.
Add onion, garlic, carrots, and celery to the pot and cook until softened, about 5-7 minutes.
Stir in tomato paste and cook for 1 minute.
Pour in dry red wine (if using) and cook, scraping up any browned bits from the bottom of the pot, until the wine has mostly evaporated, about 2-3 minutes.
Add crushed tomatoes, beef broth, oregano, basil, salt, and pepper to the pot. Bring to a simmer, then reduce heat to low, cover, and cook for at least 1.5-2 hours, or longer for a richer flavor, stirring occasionally.
Taste and adjust seasonings as needed. Serve over your favorite pasta and enjoy!
Notes
This Bolognese sauce can be made ahead of time and stored in the refrigerator for up to 3 days or frozen for up to 3 months.