Brown the ground beef: Heat a large pot or Dutch oven over medium-high heat and add the ground beef. Cook for 6 to 8 minutes, breaking it into small crumbles, until no pink remains.
Drain excess fat: Tilt the pot and spoon off most of the rendered fat, leaving just enough to cook the onion. This keeps the finished soup from tasting greasy.
Soften the onion: Add the diced onion to the pot with the beef and cook for 3 to 4 minutes, stirring occasionally, until it turns soft and translucent.
Bloom the taco seasoning: Sprinkle the taco seasoning over the meat and onion and stir constantly for about 30 seconds, until it smells toasty and coats everything evenly.
Add the tomatoes: Pour in the diced tomatoes with green chiles and the tomato sauce, scraping up any browned bits from the bottom of the pot.
Stir in the beans: Add the drained and rinsed black beans, pinto beans and kidney beans to the pot, stirring to distribute them evenly through the sauce.
Add corn and broth: Stir in the drained corn and the beef broth until the mixture reaches a spoonable, soup-like consistency.
Bring to a simmer: Increase the heat until the soup reaches a gentle boil, then reduce it to low so the surface just bubbles around the edges.
Simmer to thicken: Let the soup simmer uncovered for 15 to 20 minutes, stirring occasionally, until it thickens slightly and the beans soften further.
Taste and adjust: Taste the soup and add salt, pepper or extra taco seasoning as needed, depending on how seasoned your broth and beans were.
Ladle and top: Spoon the soup into bowls and add shredded cheese, sour cream, crushed tortilla chips or chopped cilantro as desired.