01 - In a large pot over medium heat, cook the diced bacon until crisp. Remove with a slotted spoon and set aside. Drain excess fat, leaving 1 tablespoon in the pot. For a vegetarian option, omit bacon and add an extra tablespoon of butter instead.
02 - Add butter to the pot and sauté onion, celery, carrot, and garlic for 4 to 5 minutes until softened and fragrant.
03 - Stir in potatoes, corn, bay leaf, thyme, smoked paprika, salt, and pepper. Pour in the broth and bring the mixture to a boil.
04 - Reduce heat to low, cover, and simmer for 15 to 20 minutes or until potatoes are tender.
05 - Remove the bay leaf. Using an immersion blender, puree about half of the soup directly in the pot to create a creamy texture while retaining some chunks. Alternatively, transfer half to a blender and return it to the pot.
06 - Stir in the whole milk and heavy cream, then simmer gently for 5 minutes. Adjust seasoning to taste.
07 - Ladle soup into bowls and top with reserved crispy bacon and chopped fresh chives or parsley.