gen 1 blastoise or venusaur(i never picked charizard because you can get moltres which basically does its job and venusaur can be hm slave for cut and blastoise for surf which are useful for play through)
Gen 2 Hands down typhlosion, srs its the collest one and there is hardly any decent fire types in johto.
Gen 3 Swampert for sure, water ground is one of the best type combos, if the enemy doesn't have a grass move you basically can kill it.
Gen 4 empoleon, a stell type was very usefull on this gen, its great for hm slave and taking care of many pokemons due to its resists.
gen 5 this gen i really didnt like any starter tbh so i just picked the water one for surf and waterfall.
gen 6 Amazing greninja, who doesnt like a ninja frog really fast as hell and deadly.
Gen 7 Decidueye, ghost starter ftw.
So yeah im kinda biased on water i mean 5 water types, one grass and one fire, i always go for the most unique typing or cool design and if i dont like any water for hm slave although we will probably dont need one this gen, so it really depends on typings and designs of the last evos of this gen.