Preheat the oven to 425 degrees F. Cover a baking sheet with aluminum foil (this helps with clean-up later!). Arrange the tomatoes, cut side up, on the baking sheet and drizzle with 2 tablespoons of the olive oil. Season with salt and pepper. Roast for 35 to 40 minutes, or until softened and beginning to brown. Remove from the oven and let cool slightly.
Meanwhile, in a large pot, saute the onion in the remaining 2 tablespoons olive oil over medium-high heat for 5 minutes, or until soft. Add the garlic, and saute for an additional 2 minutes. Add in the crushed tomatoes, sugar, roasted tomatoes, water, and half of the basil. If you want a little bit of a kick, stir in a pinch of red pepper flakes. Season with salt and pepper.
Bring the soup to a boil, then reduce the heat to low and let simmer for 30 minutes. (If the soup looks too thick, you can add in water by half cup increments until the desired consistency.) After cooking, stir in the remaining 1/4 cup basil. Using an immersion blender, puree the soup until smooth. Stir in the cream, and season with salt and pepper to taste. Garnish with finely sliced basil.
Serve with grilled cheese sandwiches (recipe below).
NOTE: You can also puree this soup in a blender, but keep in mind a few important things: a) let the soup cool before pureeing – otherwise the steam from the soup will blow the lid off the blender and you’ll end up with a red-stained wall (I learned this the hard way!) b) puree the soup in 2-3 batches, depending on the size of your blender. Stir in the cream after pureeing.