In saucepan, place tomatoes, garlic and chiles; cover with water; simmer over medium-high heat until tomatoes are completely cooked through, about 10 to 12 minutes. Reserve 1 cup of cooking liquid; drain tomato mixture; set aside to cool.
In a blender or food processor, combine onion, salt, tomato mixture and reserved cooking liquid; puree until smooth. In large soup pot over medium-high heat, heat oil. Add tomato puree; cook stirring occasionally until it becomes dark and thick, about 5 to 8 minutes. Reduce heat to medium; stir in the bean puree and broth; simmer until creamy, about 10 to 15 minutes. Remove from heat; season to taste.** To serve, ladle soup into bowls; add avocado, cream and Chile Crisps (recipe follows); serve warm.
To prepare Chile Crisps: Remove stems and seeds of 1 ancho chile; cut into strips. To small pan, add 1/4 cup oil; heat over medium heat until hot but not smoking. Add chile strips; flash fry until crisp but not burnt, about 3 to 4 seconds. Transfer to plate; cover with paper towel.
*To make bean puree: In blender or food processor, combine 4 cups cooked beans with 2 cups of water; whirl until pureed.
Once cooled, the soup may be covered and refrigerated for up to 4 days. Because it thickens a bit as it cools, you may need to add some chicken broth or water to thin it out when you reheat it.