The answer depends completely on the context. Competitively Venusaur is the best followed by Charizard. They aren't exceptional, but Venusaur can set up, use Sleep Powder, and do some sort of sweeping if he's lucky. While playing through the game Bulbasaur is the worst because of its complete lack of versatility especially against Bug types. Charmader is the best assuming it's ditched because fire typing is really effective early on, but it starts being less useful after a while, and Charizard doesn't learn Flamethrower in a timely fashion. Squirtle is the best if doing a solo because it is the most versatile, and it doesn't get Surf late. --- GTM Fanclub
Venusaur is one of the better Grass types, but it suffers from the dual-typing with Poison, giving it a huge weakness to Psychic (one of the best elements in RBY). It's probably the best starter thanks to its good set of attacks (Razor Leaf in particular, it's the best Grass move).
Charizard is interesting as it's arguably the best Fire Pokemon in the game (Fire types are generally sub-par). It's versatile thanks to moves like Slash and Earthquake, although the Fire/Flying means it has a x4 damage weakness to Rock, so anything with Rock Slide will rip it apart.
Blastoise is basically a Water type with a nice set of moves, but crap stats to use them with compared to other Water Pokemon. Lapras, Starmie and Slowbro have even more diverse movesets (with Starmie and Slowbro getting the very helpful Psychic as a second type to protect them from other Psychics) and are generally better choices if you want a Water Pokemon on your team.
I wouldn't worry about the gym leaders or anything when picking a starter since you get plenty of opportunity to snag other Pokemon before fighting them (even a solo Charmander can get the job done against Brock).
Neither one's particularly bad if you're worried about playing through the main game. If you really wanted a challenge, you'd be better off catching a Pidgey/Rattata/Nidoran or something early on and ditching your starter. The three starters are pretty powerful compared to the stuff you can catch early on, so if you really wanted a challenge get rid of your starter.