01 - Melt butter in a large pot over medium heat. Add chopped onion, garlic, and leeks. Cook stirring occasionally until softened but not browned, about 6–8 minutes.
02 - Add diced potatoes, bay leaf, and thyme. Stir to combine for 1 minute to release herb aromatics.
03 - Pour in vegetable broth and water. Bring to a gentle boil, then reduce heat. Cover and simmer for 20–25 minutes until potatoes are completely tender.
04 - Remove bay leaf. Using an immersion blender, puree soup until completely smooth. Alternatively, carefully transfer in batches to a countertop blender.
05 - Stir in heavy cream. Warm gently over low heat without boiling. Season with salt and pepper to taste.
06 - Ladle into bowls and garnish with chopped chives or parsley if desired.