To make the sauce: In a large skillet, melt butter over medium heat. Add onion and cook for a few minutes, stirring occasionally, until soft and translucent. Add garlic and cook until fragrant, about 1-2 minutes.
Add wine or balsamic vinegar and cook for a couple of minutes until liquid has evaporated. Add crushed tomatoes, sugar, oregano, and red pepper flakes, and season with salt and pepper. Bring just to a boil, then reduce heat to low and let simmer until sauce has thickened, 20-30 minutes.
Meanwhile make the pasta: In a large pot, bring 2-2.5 quarts/liters of water to a boil. Add 1/2 tablespoon salt, followed by the pasta. Cook until al dente (i.e., slightly firm to the bite, not crunchy nor soft). Drain well and set aside.
Once sauce has thickened, stir in cream and Parmesan. Season with salt and pepper to taste. Stir in pasta and cook on very low heat, tossing to combine for 1 minute until warm.
Serve immediately. Garnish with basil or parsley and Parmesan, if desired.