Heat oil in a large pot over medium heat. Add leeks, fennel, and garlic along with a generous pinch of salt. Cook without browning just until vegetables soften, about 5 minutes.
Increase heat to medium-high, add potatoes and stir. Add stock and bring to a boil. Reduce heat and let soup simmer about 20 minutes until vegetables are all very soft.
Let soup cool until no longer steaming and then blend, using an immersion blender until it has a smooth, velvety consistency. Season generously with salt and pepper, and stir in cream if using.
Cook bacon in a skillet until crisp. Ladle soup into bowls. Crumble bacon on top.
Notes
Make it vegan: omit whipping cream and bacon and use vegetable stock.