It depends on what you are talking about. Are you talking about the anime (if so, which season?), the video game (if so, which video game?), the card game (if so, which expansion set?), etc.
For the video games, the Legendary Pokémon are certainly the strongest. It also depends on the level of them, as well. Level 100 (the maximum level) Pokémon are, obviously, stronger than Pokémon of lower levels.
In the card game, Pokémon-EX tend to be the strongest, but they also come with several disadvantages, including the fact that your opponent takes two Prize Cards for knocking your Pokémon-EX out, instead of the usual one Prize Card. Their attacks usually (but not always) have a few disadvantages, as well.
If you are talking about the anime, movies, lore, etc., Arceus is probably the best Pokémon, since he is the “God” of the Pokémon world.