Start by heating the olive oil in a large soup pot over medium heat. Add the chopped onion and cook for about 5 minutes, or until it becomes translucent. Toss in the minced garlic, cumin, smoked paprika, and chili powder. Stir the mixture for 1-2 minutes to bloom the spices, unlocking their full flavor potential.
Next, add the black beans, vegetable broth, and diced tomatoes to the pot. Stir everything together, ensuring the beans are fully coated with the aromatic base. Increase the heat and bring the mixture to a gentle boil.
Reduce the heat to low, cover the pot, and let the soup simmer for 20-25 minutes. This allows the flavors to meld beautifully, resulting in a rich and hearty soup. If you’re adding corn, stir it in during the last 10 minutes of simmering.
For that classic creamy texture, remove half of the soup from the pot and blend it until smooth using a blender or immersion blender. Return the puréed soup to the pot and stir well. You’ll have a perfect balance of smooth and chunky textures.
Squeeze in the lime juice and season the soup with salt and pepper to taste. Ladle the soup into bowls and top it with sour cream, diced avocado, fresh cilantro, or crispy tortilla strips for added flavor and texture.