Sauté Aromatics: Heat olive oil in a large pot over medium heat. Add chopped onion and sauté until translucent (3-4 mins). Stir in garlic and cook for 30 seconds until fragrant.
Cook Tomatoes: Add tomatoes, broth, sugar, basil, oregano, salt, and pepper. Bring to a boil, then reduce heat and simmer for 20 minutes, stirring occasionally.
Blend Soup: Use an immersion blender to puree until smooth (or transfer to a blender in batches).
Add Cream & Finish: Stir in butter (if using) and heavy cream. Simmer for 2-3 minutes on low heat. Adjust seasoning.
Serve: Garnish with fresh basil. Pair with grilled cheese or crusty bread!