Heat olive oil in a large pot.
Add onion and sauté till onion turns pinkish.
Add garlic and stir till garlic turns aromatic.
Next, add diced tomatoes and cook till tomatoes turn soft and mushy.
Pour the vegetable stock, chopped basil, sugar, oregano, black pepper powder and salt and stir nicely.
Cover and cook for 15-20 minutes till the tomato soup comes to a rolling boil.
Switch off the heat and using an immersion blender or any blender, blend nicely to form smooth puree. If you are not using an immersion blender, then let the soup cool down slightly before blending to avoid splattering.
Return the soup to the pot. Add heavy cream and stir well.
Adjust salt and pepper as per taste.
Simmer the soup for 5 minutes.
Garnish with some freshly chopped basil leaves and extra cream if you like.
Serve warm.