01 - Melt the butter in a large pot over medium heat. Add the leeks and onion, and sauté for 6–8 minutes, stirring occasionally, until softened but not browned.
02 - Add the garlic and cook for 1 minute until fragrant.
03 - Stir in the diced potatoes, salt, pepper, and bay leaf. Pour in the vegetable stock, ensuring the vegetables are fully submerged.
04 - Bring to a boil, then reduce heat and simmer uncovered for 20 minutes, or until the potatoes are very tender.
05 - Remove the bay leaf. For a chunky soup, lightly mash some of the potatoes with a spoon. For a smooth soup, use an immersion blender or regular blender (in batches) to purée until silky.
06 - Stir in the milk (if using) and heat gently for 2–3 minutes. Adjust seasoning to taste. Ladle into bowls and garnish with fresh parsley.