01 - Heat olive oil in a large pot over medium heat. Add finely chopped onion and cook until softened, approximately 5 minutes.
02 - Stir in minced garlic and cook for 1 minute, until fragrant.
03 - Add canned tomatoes with juices (or fresh chopped tomatoes), vegetable broth, sugar, salt, and black pepper. Bring mixture to a boil.
04 - Reduce heat and simmer uncovered for 20 minutes to develop flavors.
05 - Incorporate fresh basil leaves and continue to simmer for an additional 5 minutes.
06 - Remove pot from heat. Use an immersion blender to puree soup until smooth, or transfer in batches to a countertop blender then return to pot.
07 - Stir in heavy cream and gently warm the soup again, avoiding boiling. Adjust seasoning as necessary.
08 - Ladle hot soup into bowls and garnish with additional basil leaves and optional croutons or toasted bread.