Sauté the aromatics: Heat olive oil in a large pot or Dutch oven over medium heat. Add onion, poblano, and bell pepper.
Cook 5–7 minutes until softened and lightly golden.
Add garlic and spices: Stir in garlic, cumin, oregano, coriander, chili powder, cayenne, salt, and black pepper. Cook 1 minute until fragrant, stirring so the spices don’t scorch.
Build the base: Add the green chiles and chicken broth. Bring to a gentle simmer.
Thicken with beans: Add one can of beans whole.
Mash about half of the second can with a fork and add it in. This creates a creamy texture without extra dairy.
Add chicken and corn: Stir in the shredded chicken and corn, if using. Simmer 10–15 minutes to let the flavors meld.
If it gets too thick, add a splash more broth.
Make it creamy: Reduce heat to low. Stir in cream cheese until fully melted and smooth, or add half-and-half. Don’t boil after adding dairy—gentle heat keeps it silky.
Finish and taste: Add lime juice.
Taste and adjust salt, pepper, and cayenne as needed. If you like it brighter, add a bit more lime.
Serve: Ladle into bowls and top with cilantro, jalapeños, tortilla chips, avocado, shredded cheese, and a dollop of sour cream, if you like.