1. Turn on broiler. Put poblanos on a foil-lined rimmed baking sheet and roast 4 in. from heat, turning once, until blackened, 10 to 15 minutes total. Put poblanos in a bowl, cover, and let sit 30 minutes to loosen skins; then peel, stem, and seed. Cut poblanos into 1/2-in. dice and set aside.
2. Meanwhile, slice corn kernels from cobs. Heat olive oil in a large, wide pot over medium heat and add onion, serranos, and 2 tsp. salt. Cook, stirring occasionally, until softened, 5 minutes. Stir in garlic and corn kernels and cook 3 minutes more.
3. Pour just enough water into pot to cover corn. Bring to a simmer, covered, and simmer 15 minutes.
4. Put diced zucchini in a small saucepan with just enough salted water to cover. Bring to a simmer and cook until tender-crisp, about 2 minutes. Drain.
5. In batches, whirl corn soup in a blender until very smooth. Strain through a fine-mesh colander into a bowl, mashing to press out liquid. (If too thick, add some water.) Season with salt. To serve the soup hot, return to pot and reheat gently (do not boil); to serve cold, chill at least 2 hours.
6. Divide among 8 bowls. Top each bowl with 2 tbsp. diced poblanos, 2 tbsp. diced zucchini, and 2 zucchini blossom halves. Sprinkle each with 1 tbsp. cheese and serve the extra on the side.
Note: Nutritional analysis is per serving.