Begin by rinsing the leeks thoroughly to remove any grit, then slice them thinly. Peel and dice the potatoes into small chunks to help them cook evenly.
Heat the butter in a large heavy-bottomed pot over medium-low heat until it melts and starts to sizzle softly. Add the sliced leeks and cook gently, stirring occasionally, until they turn translucent and soften, filling your kitchen with a sweet, leek-y aroma—about 10 minutes.
Add the diced potatoes to the pot, stirring to coat them in the buttery leeks. Cook for another 2 minutes until the potatoes begin to absorb the flavors and release a faint earthy scent.
Pour in the vegetable broth, bringing the mixture to a gentle simmer over medium heat. Reduce the heat to low and cook uncovered for about 20-25 minutes, or until the potatoes are fork-tender and easily mashed.
Once the potatoes are soft, use an immersion blender directly in the pot or carefully transfer the soup in batches to a blender. Puree until silky smooth, watching for a glossy, velvety texture. If the soup feels too thick, stir in a splash more broth.
Return the pureed soup to low heat. Stir in the heavy cream or coconut milk if using, and season with salt, pepper, and a pinch of nutmeg. Warm through for 2 minutes, tasting and adjusting the seasoning until balanced and flavorful.
Ladle the hot, velvety soup into bowls. Garnish with chopped chives or parsley for a fresh, herbaceous note. Serve immediately with crusty bread for dipping, and enjoy the comforting warmth of this simple yet rich dish.