It really depends on the game and battle. Maybe Mewtwo Ho-oh, Charizard, Lugia, Dialga, Palkia and maybe Giritina it depends how you use them and their moves this is just my opinion
Arceus
Caterpie
Arceus is the most powerful, with a base stat total of 720, the current highest. sds ooo
The most powerful water type is Suicune.
The strongest (most powerful) Pokemon is of course rayquaza.
Kyogre.
dragonite
Arceus
mewtwo
Mew
NO. Only ash got that as a choice. You have to catch it in the viridian forest, but it's rare
Yes Ditto is the most powerful unstoppable at lvl 90-100