Place the tomatoes, garlic, and the seeded and stemmed ancho chile in a saucepan, cover with water and simmer over medium-high heat for 10 to 12 minutes or until tomatoes are completely cooked through. Once the tomato mix cools down, place it in a blender or food processor with a cup of the cooking liquid, the raw white onion and a teaspoon of the salt; puree until smooth.
Heat the oil in a large soup pot over medium-high heat. Add the tomato puree and cook for 5 to 8 minutes, stirring occasionally, until it darkens in color and thickens in consistency. Reduce the heat to medium and stir in the bean puree and broth or water, simmer for 10 to 15 minutes, or until the soup has seasoned and has a creamy consistency. Taste for salt and add more if needed. Turn off the heat as it thickens quickly.
The soup without the added garnishes may be cooled and stored in a closed container and refrigerated for up to 4 days. Since 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.
Ladle the soup into bowls and drizzle on top a tablespoon each of cream and cheese, a handful of tortilla strips, a few fried chile strips and some diced avocado. You can also place garnishes in bowls on the table to let your guests garnish to their liking.