- 2 split bone-in, skin-on chicken breasts (about 1 1/2 pounds) or 4 bone-in, skin-on chicken thighs (about 1 1/4 pounds), skin removed and well trimmed of excess fat
- 8 cups low-sodium chicken broth
- 1 very large white onion (about 1 pound), trimmed of root end, quartered, and peeled
- 4 medium cloves garlic , peeled
- 2 sprigs epazote , fresh, or 8 to 10 sprigs fresh cilantro plus 1 sprig fresh oregano
- 2 medium tomatoes , cored and quartered, or a 28oz can of diced tomatoes
- 1/2 medium jalapeño chile
- 1 chipotle chile en adobo , plus up to 1 tablespoon adobo sauce
- 1 tablespoon vegetable oil
- 1 lime , cut into wedges
- 1 Hass avocado , diced fine
- 8 ounces cotija cheese , crumbled, or Monterey Jack cheese, diced fine
- fresh cilantro leaves
- minced jalapeno pepper
- Mexican crema or sour cream
- Tortilla chips or strips
- Bring chicken, broth, 2 onion quarters, 2 garlic cloves, epazote, and 1/2 teaspoon salt to boil over medium-high heat in large saucepan; reduce heat to low, cover, and simmer until chicken is just cooked through, about 20 minutes.
- Using tongs, transfer chicken to large plate. Pour broth through fine-mesh strainer; discard solids in strainer. When cool enough to handle, shred chicken into bite-sized pieces; discard bones.
- Puree tomatoes, 2 remaining onion quarters, 2 remaining garlic cloves, jalapeño, chipotle chile, and 1 teaspoon adobo sauce in food processor until smooth. Heat oil in Dutch oven over high heat until shimmering; add tomato/onion puree and 1/8 teaspoon salt and cook, stirring frequently, until mixture has darkened in color, about 10 minutes.
- Stir strained broth into tomato mixture, bring to boil, then reduce heat to low and simmer to blend flavors, about 15 minutes. Taste soup; if desired, add up to 2 teaspoons additional adobo sauce. Add shredded chicken and simmer until heated through, about 5 minutes.
To serve, place tortilla chips in bottom of individual bowls and ladle soup into bowls; pass garnishes separately.