Heat a large soup pot or Dutch oven over medium heat. Melt the butter, then add the chopped onion. Cook for 7 to 10 minutes, stirring occasionally, until soft and translucent. Do not let the onion brown.
¼ cup unsalted butter, 2 cups yellow onion
Add the garlic and cook for about 30 seconds, stirring constantly, just until fragrant.
1 tablespoon garlic
Add the tomatoes, broth, most of the basil, balsamic vinegar, black pepper and sugar. Reserve a small amount of basil to stir in after blending or use as a garnish. Stir and bring the mixture to a gentle boil. Reduce the heat to medium-low and simmer for 20 minutes. Stir occasionally.
56 ounces crushed tomatoes, 2 tablespoons granulated sugar, 2 cups chicken broth, ⅓ cup basil, 1 tablespoon balsamic vinegar, ½ teaspoon black pepper
Let the soup cool for a few minutes. Carefully transfer it to a countertop blender in batches, filling the blender no more than halfway. Remove the center cap from the lid and cover the opening loosely with a folded kitchen towel so steam can escape. Blend until smooth, then return the soup to the pot.
Return the soup to the pot and place it over low heat. Stir in the cream and Parmesan and cook for about five minutes, just until heated through and the cheese has melted. Do not let the soup boil. Add salt to taste.
½ cup heavy whipping cream, ⅓ cup Parmesan cheese, salt
Ladle the soup into bowls and garnish with a drizzle of cream, chopped fresh basil and grated Parmesan cheese.
Store leftover soup in an airtight container in the refrigerator for up to four days.