- Preheat oven to 375°F.
- Put the tomatoes in a lightly greased glass baking dish. Roast until the skins darken and the tomatoes are caramelized, about 30 minutes. Remove from the oven and let cool. Keep the oven on.
- Spread the corn in a single layer on a baking sheet. Roast until the edges begin to turn golden brown, 10 to 15 minutes. Meanwhile, when the tomatoes are cool enough to handle, peel off the skins and discard. Set the flesh, with the juices, aside in the baking dish. Remove the corn from the oven and let cool.
- Place 1 bell pepper on each of 2 gas burners. Turn the burners on high and sear the peppers directly over the flame, using tongs to turn as needed, until the skins are blackened all over, 10 to 15 minutes total. (Or place the peppers under the broiler and broil, turning as needed, until charred and blistered on all sides, about 15 minutes.) Transfer the peppers to a brown paper bag and close tightly. Let stand for 15 minutes, then remove the peppers from the bag. Remove and discard the skins, core and seeds.
- In a soup pot, combine the tomatoes, bell peppers, yellow and red onions, garlic and corn, reserving a handful of the roasted corn for garnish. Add just enough broth to cover the vegetables and bring to a boil over high heat. Reduce the heat to medium-high and cook until the vegetables are very tender, about 10 minutes. Stir in the chili powder and salt.
- Using an immersion blender, blend the soup until smooth. While blending, slowly drizzle in the cream. Ladle the soup into individual bowls. Garnish each portion with a couple of avocado slices, a few drops of olive oil, a scattering of the reserved roasted corn and a sprinkle of paprika. Serve hot.