In a large skillet over medium heat, cook the ground beef until browned and fully cooked. Drain any excess fat.
Add the chopped onion and minced garlic to the skillet and sauté for 3-4 minutes, or until the onions are soft and translucent.
Transfer the beef and onion mixture to your slow cooker. Add crushed tomatoes, tomato sauce, tomato paste, red wine (if using), sugar, dried basil, oregano, parsley, crushed red pepper flakes, salt, and pepper. Stir until all ingredients are combined.
Cover and cook on low for 6-8 hours or on high for 3-4 hours, allowing the flavors to meld together.
About 20-30 minutes before serving, cook the spaghetti according to package directions until al dente. Drain well.
Add the cooked spaghetti to the slow cooker and gently toss with the sauce to coat evenly.
Let the spaghetti sit in the slow cooker for another 10 minutes so it can absorb the flavors. Serve hot, garnished with fresh Parmesan or parsley if desired.
Enjoy!