Heat butter and oil over medium heat. Add onions and garlic and saute for a minute or so. Pour in tomato sauce and add salt, pepper, and sugar to taste. Stir and cook over low heat for 25 to 30 minutes, stirring occasionally.
Cook pasta according to package directions. Drain, reserving 1 cup of pasta water.
Remove sauce from heat and stir in cream. Add parmesan cheese, salt and pepper. Stir well.
Add pasta to sauce and top with chopped basil
Serve immediately. (Thin with pasta water before adding basil if needed.)