Preheat the oven to 375F. Place the cobs of corn, in their husks, on a baking sheet and roast for about 45 minutes, then remove from the oven and set aside until cool enough to handle. Cut the kernels of corn off the cob into a bowl, and put the cleaned cobs into a pot with the stock; bring to a simmer. (Toss the husks and silk.)
Meanwhile, in a large saucepan or medium Dutch oven, heat a drizzle of oil over medium heat and saute the onion and celery for 8-10 minutes, until soft and very limp, without browning them. Add the garlic and cook for another few minutes. Shake the flour over the sauteed veggies and stir to coat.
After about 20 minutes, pour the stock off the cobs onto the sauteed veggies. Add the corn kernels (keeping about 1/4 back to add to the pureed soup) and basil and bring to a simmer; cook for a few minutes, season with salt and pepper, and puree right in the pot with a hand-held immersion blender or carefully transfer to a regular blender in batches to puree.
If you like, strain through a coarse sieve to get rid of most of the solids - I did this with half, but liked the texture of the pureed soup so left the rest unstrained. Return to the pot, add a splash of cream and heat through. Serve topped with the reserved whole kernels of corn.