In a large pot or dutch oven, heat olive oil over medium heat. Add the onions, celery and garlic. Cook, stirring, until vegetables are tender, about 4 minutes. Season with kosher salt and pepper.
Add the corn and arrowroot starch. Stir until well combined.
While stirring, slowly pour in the broth until it is well incorporated.
Add the potatoes, thyme, cayenne (if using) and smoked paprika. Stir to combine and bring to a boil. Once it reaches a boil, reduce heat to a low, simmer and cook, uncovered and stirring occasionally, until the potatoes are tender, about 10 minutes.
When the potatoes are tender, ladle 3 cups of the soup to a food processor or blender and blend until smooth. Transfer back to the soup and stir to combine.
Stir in the coconut milk and continue to let the soup simmer, uncovered, for 8 to 10 more minutes, allowing the soup to thicken a bit more.
Taste the soup and adjust seasonings, if desired.
Serve and enjoy! I garnish mine with a drizzle of olive oil, some fresh cut summer cherry tomatoes, and a little microgreens for garnish.