Melt the butter in a large pot over medium heat.
Add onion, poblano peppers, and garlic. Cook until soft and fragrant.
Stir in flour if using and cook for 1 minute.
Slowly whisk in chicken broth until smooth.
Add cream or half-and-half and bring to a gentle simmer.
Add potatoes and cumin. Simmer until potatoes are fork-tender.
Stir in chicken and corn. Cook until heated through.
Reduce heat to low. Add salt and black pepper.
Stir in cheese if using and let melt gently.
Remove from heat and rest for 5 minutes before serving.