White Chicken Chili

3 tablespoons olive oil
1 medium onion, diced small
2 stalks celery, diced small
1 green bell pepper, seeded and diced small
1 jalapeno pepper, seeded and minced
1 4 oz can green chiles
4 cloves garlic, minced
1 teaspoon ground cumin
1/2 teaspoon ground chili powder
1/4 teaspoon cayenne, plus more to taste
6 cups chicken stock
2 15 oz cans white beans, such as Great Northern or Cannellini
2 cups fresh or frozen yellow corn (thawed if frozen)
4 cups cooked, shredded chicken (or turkey)
1 1/2 teaspoons Tabasco sauce (or Cholula if you want real flavor and not just heat)
6 tablespoons unsalted butter
6 tablespoons all-purpose flour
3/4 cup whole milk (or heavy cream)
salt and freshly ground black pepper, to taste
Sour cream and grated cheddar, for serving

Heat olive oil in a large heavy stock pot or Dutch oven over medium heat. Add the onion, celery, bell pepper, and jalapeno and cook until very soft, about 8 - 10 minutes. Add the green chiles, garlic, cumin, chili powder, and cayenne; sauté for an additional minute or two.

Pour in the chicken stock and bring to a boil. Add the white beans, corn, chicken, Tabasco, and a generous amount of salt and pepper. Reduce the heat to low and simmer for about an hour.

Melt the butter in a heavy sauce pan over medium heat. Whisk in the flour and cook the roux for 1-2 minutes. Pour in the milk and continue whisking until a thick paste forms, about 2-3 more minutes. Stir the paste into the chili until it is completely incorporated and there are no lumps.

Continue cooking the chili over low heat, stirring occasionally, for another 45 minutes to an hour. Season to taste, using a generous hand, with additional salt, black pepper, and cayenne. (Once it's done, I like to turn it off for a few hours, then heat it again before serving. The flavor and texture just keeps getting better with time.)

Serve chili with sour cream, freshly grated cheddar, and additional hot sauce on the side.