01 - Melt butter in a large pot over medium heat. Add diced onion, minced garlic, chopped carrot, and celery. Cook, stirring occasionally, for 5 to 7 minutes until softened and fragrant.
02 - Stir tomato paste into the softened vegetables and cook for 1 minute to intensify flavor.
03 - Add chopped or canned tomatoes, vegetable broth, sugar, thyme, basil, and bay leaf. Bring mixture to a boil, reduce heat, and let simmer uncovered for 20 minutes, stirring occasionally.
04 - Remove the bay leaf. Use an immersion blender or transfer in batches to a stand blender and puree until smooth.
05 - Return the pureed soup to low heat. Stir in heavy cream and season with salt and freshly ground black pepper. Heat gently until warmed through without boiling.
06 - Ladle soup into bowls and garnish with fresh basil leaves, a drizzle of cream, and croutons if desired.