Heat the olive oil (or butter) in a large pot over medium heat. Add the diced onion, carrot, and celery. Cook for 6–8 minutes, stirring occasionally, until the vegetables are soft and the onion is translucent and just starting to turn golden.
2 tablespoons olive oil, 1 medium yellow onion, 1 medium carrot, 1 rib celery
Stir in the minced garlic, dried basil, dried oregano, and a pinch of red pepper flakes if using. Cook for 30–60 seconds, just until fragrant. If you’re using tomato paste, add it now and cook for another 1–2 minutes, stirring, to deepen the flavor.
2 cloves garlic, 1 teaspoon dried basil, 1/2 teaspoon dried oregano, 1-2 tablespoons tomato paste, pinch red pepper flakes
Carefully add the frozen whole tomatoes straight from the freezer into the pot. No need to thaw or peel. Cover with a lid and let them heat for about 5–10 minutes; as they soften, use a wooden spoon to gently press and break them into chunks. If large pieces of skin slip off, you can remove them with tongs or leave them to blend in later.
8-10 frozen whole tomatoes
Add 2 cups of broth to start, along with the bay leaf, salt, pepper, and 1 teaspoon of sugar or honey. Stir well, scraping the bottom of the pot so nothing sticks. Bring to a gentle boil over medium-high heat, then reduce the heat to low and simmer uncovered for 25–30 minutes, until the tomatoes have broken down and the vegetables are very tender.
2-3 cups vegetable broth or chicken broth, 1-2 teaspoons sugar or honey, 1 teaspoon kosher salt, 1/2 teaspoon black pepper, 1 bay leaf
After simmering, taste the soup. If it’s too tangy, add more sugar or honey 1/2 teaspoon at a time. If it tastes flat, add another pinch of salt, pepper, or a bit more dried basil. If the soup is too thick, add more broth in small amounts; if it’s too thin, let it simmer longer uncovered.
2-3 cups vegetable broth or chicken broth, 1-2 teaspoons sugar or honey, 1 teaspoon kosher salt, 1/2 teaspoon black pepper, 1 teaspoon dried basil
Remove the bay leaf. For a smooth soup, use an immersion blender right in the pot and blend until silky. For a chunky, rustic texture, use a potato masher to break up the tomatoes and vegetables, leaving some texture. For an ultra-smooth soup, carefully transfer in batches to a countertop blender, filling it no more than halfway and venting the lid for steam.
If you used a countertop blender, return the soup to the pot over low heat. Stir in your choice of heavy cream, half-and-half, whole milk, coconut milk, or other creamy plant-based milk. If using Greek yogurt, whisk it first with a small ladle of hot soup in a separate bowl to temper, then stir it back into the pot. Warm gently for 3–5 minutes without boiling, then taste and adjust seasoning if needed.
1/2-3/4 cup heavy cream, half-and-half, or whole milk, 1/2 cup plain Greek yogurt, 1/2 cup full-fat coconut milk or creamy plant-based milk
Ladle the soup into bowls. Garnish with fresh basil or other herbs, a swirl of cream, a sprinkle of grated Parmesan if using, and a crack of black pepper. Serve hot with grilled cheese, crusty bread, or a simple green salad.
1/4 cup Parmesan cheese, fresh herbs