01 - Heat olive oil in a large pot over medium heat. Add onion, carrot, and celery. Sauté for 5-7 minutes until softened.
02 - Add garlic and cook for 1 minute until fragrant.
03 - Stir in diced tomatoes with juices, vegetable broth, sugar, basil, oregano, salt, and pepper. Bring to a boil, then reduce heat and simmer uncovered for 20 minutes.
04 - Remove soup from heat. Use an immersion blender or transfer to a blender in batches to purée until smooth.
05 - Stir in heavy cream. Taste and adjust seasoning as needed. Keep warm over low heat.
06 - Butter one side of each bread slice.
07 - Place 4 bread slices, buttered side down, on a cutting board. Top each with 2 slices of cheese. Cover with remaining bread slices, buttered side up.
08 - Heat a large skillet or griddle over medium heat. Cook sandwiches 2-3 minutes per side until golden brown and cheese is melted.
09 - Remove from skillet, let cool slightly, and cut each sandwich into strips.
10 - Serve creamy tomato soup hot with grilled cheese dippers on the side.