Heat olive oil in a large pot over medium heat.
Add chopped onions and sauté until translucent, about 5 minutes.
Stir in minced garlic and cook for another minute.
Add chopped tomatoes, cooking for 10 minutes until softened.
Pour in the vegetable broth and bring to a boil.
Reduce heat and let it simmer for 15 minutes.
Use an immersion blender to puree the soup until smooth.
Add sugar, salt, and pepper to taste.
Stir in heavy cream if desired, and heat gently.
Serve hot, garnished with fresh basil and croutons.