01 - Heat olive oil in a large pot over medium heat. Add the chopped onion and cook for 4 to 5 minutes until soft and translucent.
02 - Add minced garlic and cook for 1 minute until fragrant.
03 - Stir in the tomatoes with their juice if canned, vegetable broth, sugar, salt, black pepper, and red pepper flakes if using. Bring the mixture to a simmer.
04 - Reduce heat to low, cover, and simmer for 20 minutes, stirring occasionally to blend flavors.
05 - Add the chopped basil leaves, then puree the soup using an immersion blender or in batches with a countertop blender until smooth.
06 - Stir in heavy cream and heat gently for 2 to 3 minutes. Adjust seasoning as needed.
07 - Ladle the hot soup into bowls. Garnish with extra basil leaves, a drizzle of cream if desired, and freshly ground black pepper.