Cook the bacon in a large pot over medium heat until crispy. Remove bacon and set aside, leaving about 2 tablespoons of bacon fat in the pot.
Add the onion, celery, and carrots to the pot and sauté for about 5 minutes, until softened. Add the garlic and cook for another 30 seconds.
Sprinkle the flour over the vegetables and stir constantly for about 1 minute.
Gradually pour in the chicken broth, stirring well to dissolve the flour and scrape up any browned bits from the bottom of the pot.
Stir in the heavy cream, potatoes, corn, Italian seasoning, and cayenne pepper (if using). Bring to a boil, then reduce heat and simmer for 15-20 minutes, or until the potatoes are tender.
Season with salt and pepper to taste. Serve hot, garnished with the reserved bacon.