Heat the oil, butter and a pinch of salt in a large pot over medium heat. Add the leeks & onion, sauté until softened, about 5-6 minutes.
Add the potatoes, garlic, thyme, rosemary, and coriander. Sauté for 2-3 minutes.
Add the vegetable broth, bay leaf, salt, and pepper. Raise heat so it starts to simmer. Now reduce heat to a low simmer and cook for about 15-20 minutes, or until the potatoes are fork tender.
Remove from heat and remove bay leaves. Stir in the coconut milk and optional lemon juice. Taste for seasoning and add more to taste.
Using an immersion blender, blend until smooth and creamy. You can also use a regular blender and carefully blend in batches. Before blending, set aside a few pieces of potato for the garnish.
*Leeks can be very dirty inside the layers because they are grown in sandy soil. To clean thoroughly, cut off the dark green part and discard (or save for stock). Cut off the roots, and slice the stalk lengthwise in half. Now slice the entire leek into pieces. Place in a small bowl of water and swish around to release the dirt. Place in a colander and drain well.
*Vegetable Broth: I like to use low sodium broth, so I can control the salt taste. Some broths are too salty and can ruin a good recipe. If you would like to use a regular broth, make sure to cut down the added salt in the recipe. Taste as you go along. Another option is to blend low sodium and regular broth together. If you would like to omit the non-dairy milk, just add a 1/2 cup more vegetable broth. The soup will still have a creamy texture from the potatoes.
* If you don't have vegan butter, you can replace it with olive oil.
*If you don't like coconut milk, my second choice for this recipe would be unsweetened soy milk, because it has a richer & creamier texture, but any plant-based milk will work.