01 - Heat olive oil in a large heavy-bottomed pot over medium heat. Add the diced onion, minced garlic, and sliced carrot. Sauté for 5 minutes, stirring occasionally, until the onion is translucent and the vegetables have softened.
02 - Add the chopped tomatoes to the pot and cook for an additional 5 minutes, stirring frequently, until the tomatoes begin to break down and release their juices.
03 - Pour in the vegetable broth. Add the basil, salt, pepper, and sugar if using. Bring the mixture to a rolling boil, then reduce the heat to low and simmer uncovered for 20 minutes, allowing the flavors to meld together.
04 - Remove the pot from heat. Using an immersion blender, purée the soup directly in the pot until completely silky and smooth. Alternatively, transfer the mixture to a countertop blender in batches and blend until velvety.
05 - If using, stir in the heavy cream or milk. Return the pot to low heat and warm through gently. Do not allow the soup to boil once the dairy has been added.
06 - Taste the soup and adjust the salt and pepper as needed. Ladle into warmed bowls and garnish with torn fresh basil leaves. Serve immediately.