Heat a large pot over medium-high heat. Add the bacon and cook for 4-5 minutes until lightly browned and crispy. Remove the bacon to a bowl, leaving the fat in the pot, and set aside.
Add the onion, celery, and carrots to the pot and cook for 3-4 minutes. Add the garlic and cook for 30 seconds.
Add the flour and cook for 1 minute, stirring constantly.
While stirring constantly, pour in the chicken stock. Add the potatoes, salt, black pepper, and Italian seasoning, and bring to a boil, then reduce to a simmer. Cook for 15-20 minutes until softened.
Add the corn and cook for 2 minutes, just enough to warm them up.
Finally, stir in the heavy cream and season with more salt and pepper to taste. Ladle into bowls and top with the bacon!