There are 251 Pokémon in Crystal's Pokédex. Only 249 are needed to get the certificate from the Game Freak employee in Celadon City. The game is programmed to accept any 249, meaning if you use the Celebi egg glitch to get Mew or Celebi, or have access to the GS Ball Celebi in your copy of Crystal, you can skip up to two other Pokémon.
Not all of the remaining 249 Pokémon are available in Gold, Silver, and Crystal alone; some require trading with Red, Green, Blue, and Yellow. This page is intended to show the maximum number of Pokémon possible without trading with any Gen 1 games.
The maximum number of Pokémon you can get this way is 232. If you are playing on the 3DS Virtual Console, you are able to get Celebi, making the total instead 233.
In order to complete the Pokédex in Pokémon Crystal this way, you will need access to at minimum a copy of Pokémon Gold and a copy of Pokémon Silver.
The following version-exclusive Pokémon have to be traded from another game:
Some Pokémon are mutually exclusive, meaning that if you get one species, you cannot get at least one other species. The list of mutually exclusive species is below.
You will need access to both Gold and Silver anyway to finish the Pokédex. So, you can have each game choose a different starter, and then trade around & breed it to get all three starters and their evolutions registered.
Ten Pokémon evolve by trading: Golem, Machamp, Alakazam, Gengar, Politoed, Slowking, Steelix, Scizor, Kingdra, and Porygon2. The easiest way to get data for them is to trade them to another game and immediately trade the newly-evolved Pokémon back.
You will need two King's Rocks, two Metal Coats, one Dragon Scale, and one Up-Grade to evolve Politoed, Slowking, Steelix, Scizor, Kingdra, and Porygon2.
The remaining Pokémon are obtainable only in Red, Green, Blue, or Yellow, or in defunct events.