First, make the croutons. Preheat the oven to 350 degrees Fahrenheit. Place the cubed bread and pancetta on a rimmed baking sheet and toss with olive oil, garlic powder, ground black pepper, and salt.
Once the croutons are evenly coated with oil and seasonings, shake the pan to distribute evenly, and bake in the oven for about 25 minutes, or until the bread is nicely golden and the pancetta is crisp. Turn off the oven, remove the pan, and set aside until later.
Meanwhile, start the soup. Melt the butter in a large dutch oven over medium heat. Add the onion, fennel stalks, 1 teaspoon salt, and 1 teaspoon ground black pepper and sauté for about 10 minutes, stirring occasionally, until the vegetables are softened and just slightly starting to brown.
Add the garlic and sauté for another minute or two, stirring often, until fragrant and softened.
Add the potatoes, stock, and bay leaves and bring to a boil. Reduce the heat to a simmer, partially cover, and simmer for 20 to 30 minutes, or until the potatoes are completely tender.
Remove the bay leaves, then puree with an immersion blender or in batches in a blender. Stir in the milk and heavy cream, season with salt and pepper to taste, and serve with the crispy pancetta croutons.
This soup is on the heavier side, so it goes well with a simple side salad or other light veggie side.