There's no real best or worst hero. I think it's very much dependant on the individual. That's the thing I like about DOTA allstars.. it can be quite balanced with early-game/late-game heroes, range heroes, tanker heroes, etc. A hero can be strong against a certain type of hero, but weak against another type, so on and so forth.
I've no personal favourite either, cos I play random. But I should be able to use most heroes effectively, though probably not as effectively as people who specialize in a single hero.