Since there are now 649 Pokemon, is it really possible to legitimately catch every single Pokemon from all the generations on one game? Black/White are only limited to 8 boxes on the PC and I don’t know if that changes in Black 2/White 2 to hold more. Since you can’t trade B/W pokemon back to other generations, it looks like these games would be the only ones you could try to get them all on.
It depends on what you mean by “catching ’em all on one game.” Obviously, during a playthrough of a single game, you cannot catch a wild individual from every single species; for one thing, the games are designed such that some Pokémon cannot be obtained without trading them from another version. However, via trades and transferring from previous generations, you can gather all Pokémon other than:
in a single game, and with events (either by participating in them or just getting the Pokémon from others in trades) you can get everything other than Meloetta and Genesect, which have not been released in any events yet. You can gain enough boxes to hold them all by putting at least one Pokémon in each box and then exiting & reentering the storage system until you’ve unlocked all 24 boxes.