Best Pokemon? There is no such thing. Neither in the anime, nor in the games.
You need to make things more specific. What exactly do you mean by best right here?
A Pokemon that doesn't have any weaknesses? A Pokemon that has the highest stat total?
And also, are you meaning to use the said Pokemon for beating the game or for playing online with others?
Let me tell you - in game, any Pokemon will work if well trained. You just need to be several levels above the gym leader in a town/city, and you'll be fine.
Online though, there is no best Pokemon, once again. You need to come up with a very balanced team, but even then somebody will beat you with a strategy your team wasn't meant to handle.
Weakness wise, the only two Pokemon that doesn't have any weakness are Spiritomb and Sableye because of their typing.
Stat wise, Arceus, the legendary Pokemon from generation 4, still stands at the top of course.
With a 720 base stat total, the only thing that even comes near is Mewtwo with 680 base stat total.
For non-legendary, it would be Slaking with 670 base stat total. Dragonite, Metagross, Salamence, Tyranitar, Garchomp, and Sazandora(Gen V) are among other Pokemon with high base stat total of 600.
Of course, the person talking about Ulgamoth is wrong in a lot of ways. Ulgamoth has 550 base stat total.
The last advice I can give you for getting closer to making a very great team (not perfect, because no single Pokemon is best) is that you should learn about Natures, IVs, and EV training.
If you use Rare Candy, your Pokemon doesn't get any EV points. Therefore, a Pokemon that has been EV trained to level 50 will have a great chance to defeat the same Pokemon at level 60 or even higher when not EV trained.
Online, people will simply crush your whole team with just one or two Pokemon if you don't EV train and work for a good nature and good IVs.
In the end, there are so many different sets of combination in the online play because a single Pokemon isn't the best.