In a large pot or Dutch oven, cook the diced bacon over medium heat until crisp. Remove the bacon with a slotted spoon and set aside, leaving the rendered fat in the pot.
Add the chopped onion to the pot and cook until softened, about 5-7 minutes. Stir in the minced garlic and cook for another minute until fragrant.
Sprinkle the flour over the onions and garlic, stirring constantly for 1 minute to form a roux.
Gradually whisk in the chicken broth until smooth. Add the diced potatoes and bring to a simmer.
Reduce heat to low, cover, and simmer for 15-20 minutes, or until the potatoes are tender.
Stir in the corn kernels, heavy cream, cayenne pepper, salt, and black pepper. Cook for another 5 minutes, stirring occasionally, until heated through. Do not boil.
Serve hot, garnished with the reserved crispy bacon.
Notes
This chowder can be made ahead of time and reheated gently. For a vegetarian option, omit the bacon and use vegetable broth.