Heat a large pot over medium heat and add the olive oil.
Add the onion, garlic, carrots, celery, red bell pepper, and stir well, letting the vegetables soften and brown slightly.
Add the taco seasoning, letting the veggies continue to cook for a few more minutes.
Add the corn, black beans, diced tomatoes and sweet potatoes, stirring well.
Add the stock (5 to 6 cups, depending on how big the sweet potatoes are), making sure the sweet potatoes are just covered by the liquid.
Add the lid to the pot and let the soup simmer on medium to medium-low heat for about 20-25 minutes until the sweet potatoes are fork tender.
Serve in bowls with a dollop of sour cream, some shredded cheese, and chopped cilantro (optional).