Prep the tortillas and toppings.
Cut 4–6 corn tortillas into thin strips. Set aside half to simmer in the soup and half for crispy topping. Prep garnishes like cilantro, avocado, shredded cheese, and lime wedges.
Crisp some tortilla strips.
In a skillet, heat a little oil over medium and fry half of the tortilla strips until golden and crisp, 2–3 minutes. Drain on paper towels and sprinkle with salt. These will add crunch at the end.
Sauté the aromatics.
In a large pot or Dutch oven, heat 2 tablespoons oil over medium. Add diced onion, bell pepper, and jalapeño. Cook until softened, about 5 minutes.
Stir in garlic and cook 30 seconds, just until fragrant.
Bloom the spices. Add cumin, chili powder, smoked paprika, oregano, 1 teaspoon salt, and 1/2 teaspoon pepper. Stir for 30–60 seconds to let the spices toast.
This deepens the flavor.
Build the base. Pour in the chicken broth, fire-roasted tomatoes, green chiles, black beans, corn, and the remaining uncooked tortilla strips. Stir well.
Add the chicken.
Nestle the chicken breasts or thighs into the pot. Bring to a gentle simmer, cover, and cook 12–18 minutes, depending on thickness, until the chicken is cooked through.
Shred the chicken. Transfer chicken to a plate and shred with two forks.
Meanwhile, keep the soup at a light simmer so the tortilla strips soften and help thicken the broth.
Make it creamy. Reduce heat to low. Whisk in the softened cream cheese until fully melted and smooth.
Stir in the half-and-half. Return the shredded chicken to the pot and warm through. If the soup is too thick, add a splash of broth.
If too thin, simmer a few more minutes.
Brighten and balance. Squeeze in the juice of 1 lime and taste. Adjust salt, pepper, and lime to your preference.
A pinch of sugar can balance acidity if needed.
Serve. Ladle into bowls and top with crispy tortilla strips, shredded cheese, cilantro, avocado slices, and a dollop of sour cream. Add extra lime wedges on the side.