Warm the butter in a soup pot or Dutch oven, then add the onion, garlic, and celery. Cook for a few minutes until the onion is translucent.
Stir in the thyme, salt, and pepper. Add the potatoes and vegetable broth. Increase heat to bring to a boil, decrease to medium-low to maintain a simmer, cover, and cook for 10 to 12 minutes until the potatoes are tender.
Use a fork to smash some of the potatoes to thicken the soup. Stir in the corn kernels and milk (if using). Cook for a few more minutes until warmed through. Ladle into bowls, and enjoy!
Leave a rating or review by tapping the stars on this recipe card (above) or in the comments section (at the end of the post)!
To make vegan, sub olive oil for butter and omit the milk or use a plant-based alternative.
You can sub frozen or canned (drained) corn for fresh.
Leftovers will keep for 3 to 4 days in an airtight container in the fridge. Reheat in a saucepan over medium heat until warmed through.
Serve as an appetizer, side, or main dish. Nutrition facts are calculated for 1 cup (recipe yields about 6 cups). It serves 2 to 3 as a main dish (~2 to 2.5 cup serving size) and 4 to 6 as a side (~1 to 1.5 cup serving size).