Preheat oven to 400°F.
Using a knife or corn kernel remover, slice the kernels off the ears of corn and place them on a greased baking sheet.
Roast at 400°F for 10 to 15 minutes, or until golden brown. Remove the baking sheet from the oven and allow to cool. Reserve a handful of kernels for garnish.
In a large pot, melt the butter over medium-high heat. Add the diced onion and sauté until translucent. Add the roasted kernels and garlic and stir to coat in oil. Pour in the stock and season with salt. Bring to a boil and cook for 8 to 10 minutes. Reduce the flame to low and simmer for 15 minutes. Remove from heat and purée using an immersion blender.
Ladle into bowls and garnish with cubes of avocado, a sprinkling of paprika, chopped cilantro, and a few of the reserved roasted kernels. Serve hot.
This soup can easily be made parve — just replace the butter with olive oil.