Sauté – Heat olive oil or butter in a large pot over medium heat. Add onion and cook until soft, about 5 minutes. Stir in garlic and cook for 1 minute.
Simmer – Add crushed tomatoes, broth, sugar, salt, pepper, and oregano. Stir well and bring to a boil. Reduce heat and let simmer for 15–20 minutes.
Blend – Use an immersion blender to puree the soup until smooth (or carefully blend in batches).
Finish – Return soup to low heat. Stir in heavy cream and fresh basil. Simmer for 5 more minutes.
Serve – Ladle into bowls, top with Parmesan and basil, and serve with crusty bread or grilled cheese.