How to Make It
In a saucepan, heat the olive oil until shimmering. Add the onion, garlic and a generous pinch of salt and cook over moderate heat, stirring, until softened and starting to brown, 8 minutes. Stir in the tomatoes, chipotle chiles and stock and bring to a boil. Simmer over moderately low heat, stirring occasionally, until the tomatoes are very soft, 30 minutes.
Meanwhile, in a skillet, heat 1/4 inch of canola oil. Add half of the tortilla strips and fry over moderate heat, stirring, until crisp, 2 to 3 minutes. Using a slotted spoon, transfer the strips to paper towels. Season with salt. Repeat with the remaining strips.
Carefully ladle half of the soup into a blender and add half of the butter. Puree until smooth. Pour the pureed soup into a large saucepan. Repeat with the remaining soup and butter. Stir in the shredded chicken and gently reheat the soup. Season with salt.
Serve the soup in bowls, garnishing with queso fresco, chile, cilantro and tortilla strips.