5 ears yellow or bicolor corn (or 5 cups frozen corn kernels)
2 tablespoons olive oil
2 shallots, thinly sliced into rings
3 garlic cloves, minced
1 (1-inch) piece ginger, peeled and minced
1 serrano chile (or other chile), minced
2 small red potatoes (6 to 8 ounces total), cut into 1/2-inch cubes
2 1/2 cups vegetable broth (or 2 1/2 cups of hot water whisked with 1 1/2 teaspoons jarred bouillon)
1 (15-ounce) can full-fat coconut milk
1 tablespoon lime juice (from 1/2 lime)
Kosher salt, to season
Torn cilantro leaves, toasted coconut flakes, chopped roasted peanuts, crispy fried shallots, lime wedges and more sliced Serrano chiles, to serve (optional)
Cut the corn kernels off the cobs and transfer to a bowl. Using the back of a butter knife, scrape the cobs so that all of the milky juices collect in the bowl and the cobs look completely dry, like wrung-out sponges. Set aside. (If using frozen kernels, skip this step.)
In a large stockpot over medium heat, heat olive oil. Add shallots, garlic, ginger and chile, and sauté, stirring occasionally, until soft and fragrant, 3 to 5 minutes. Add corn kernels and juices to the pot, and sauté until the corn is softer and brighter, about 3 minutes more.
Add potato pieces, and stir to coat, 1 to 2 minutes.
Now, pour in the vegetable broth and coconut milk. Bring to a boil, reduce to a simmer, cover, and cook for 8 to 10 minutes, until the potatoes are tender all the way through.
Use an immersion blender to roughly purée the soup, so that it’s creamy with some kernels of corn, chunks of potato, and chile flecks remaining. (Alternatively, ladle about half of the soup into a blender, blend until smooth, and return to the pot.) Season with lime juice and salt, and mix to combine. Ladle soup into bowls and garnish with toppings of your choice.