1 cup neutral oil – for frying tortilla strips and chiles
10 pieces corn tortillas – cut into 0.5-inch-wide strips
2 pieces pasilla chiles (dried) – stems and seeds removed
6 cups chicken stock
2 sprigs epazote sprigs
2 teaspoons kosher salt – plus more to taste
avocado – sliced (for serving)
Mexican crema – for serving
queso fresco – crumbled (for serving)
limes – cut into wedges (for serving)
Instructions
Position an oven rack 6 inches from the broiler and line a sheet pan with foil. Broil the roma tomatoes, white onion, and garlic cloves until blistered and charred in spots, 10–12 minutes, turning once; cool just enough to handle, then slip the skins off the garlic and transfer all the roasted vegetables to a blender.
Heat the neutral oil in a wide pot or deep skillet over medium heat until shimmering, 350°F if using a thermometer. Fry the corn tortillas in batches until crisp and lightly golden, 3–5 minutes per batch; drain on paper towels. Briefly fry the pasilla chiles in the same oil until puffed and fragrant, 10–15 seconds; drain, tear one chile into pieces and add it to the blender, then slice the other into thin rings and reserve for serving. Pour off and reserve all but 2 tablespoons of the frying oil from the pot.
Blend the roasted vegetables with the torn fried chile until perfectly smooth, 45–60 seconds.
Return the pot to medium heat with the 2 tablespoons reserved oil. Pour in the puree and cook, stirring, until thickened slightly and darkened, 5–7 minutes. Add the chicken stock and epazote sprigs, bring to a simmer, and cook gently 15–20 minutes until the broth is brick-red and aromatic. Season with the kosher salt to taste.
To serve, put a handful of the fried tortilla strips into each warm bowl and ladle the hot soup over them. Top with avocado, a drizzle of Mexican crema, and queso fresco; add a few pasilla chile rings. Serve immediately with lime wedges.