Break stripped corn cobs in half and place in a large saucepan with stock water. Bring to a simmer, cover partly and cook for 20 minutes. Strain, discard cobs and measure 4 cups stock, adding water if needed to reach that amount.
Meanwhile, melt butter in a soup pot over medium heat. Cook onion and celery for 7 minutes until soft without browning.
Add potatoes, measured corn stock, salt, pepper and thyme. Bring to a gentle simmer and cook for 12 to 15 minutes until potatoes are almost tender.
Add corn kernels and simmer for 5 minutes. Lift 2 cups of soup, including plenty of corn and potato, into a heat-safe blending container and puree carefully until smooth; return to the pot.
Stir in milk and cream and warm over low heat for 3 to 5 minutes until steaming without a hard boil. Divide among 6 bowls, keeping whole kernels and potato cubes visible in each serving.