Silly question. This game is about counter-picking. You can't pick Udyr against Caitlyn, but you will absolutely crush Gangplank or Nasus. If the enemy team has Singed, you probably shouldn't pick Jax. And so on.
So champions are situationally strong. Nasus is a good pick if you know you won't get kited and you'll get loads of easy farm. Warwick and Udyr are great against anyone with low sustain and/or short range. Galio is not bad if they are AP-heavy and you won't have a real support going bot. If you don't know who you're facing, then Cho'gath is possibly the best universal, all-around solo-topper. He can farm against anyone and won't fall off dramatically even with poor farm. But I don't think Cho is the king of solo top: many champions can beat him with smart play, he has the bad habit of pushing the lane too hard, and it's not easy to pick up kills as Cho because he's quite predictable.
Picking the right champion is not just about who can win the lane, but also what your team needs. While Warwick is my favorite solo top champ, I can't really pick him if I'm the only tank in the team and the enemy is tanky and AD-heavy (my WW's core is optimal against AP, and he has a field trip on squishies). I may have to pick Malphite instead, even if I know I will lose a little in farm.
That said, I voted Urgot. He has pretty much the best lane control in the game. This also means you can put your bruiser/assassin bot with the support, and pick up some easy kills. Taric/Xin Zhao will be a nice pair against Ashe and Soraka, for example.