Adding to what Caveman said, each pokemon falls into one of these categories, the number being how much EXP that pokemon category takes to reach level 100:
Erratic - 600,000 EXP
Fast - 800,000 EXP
Medium-Fast - 1,000,000 EXP
Medium-Slow - 1,059,860 EXP
Slow - 1,250,000 EXP
Fluctuating - 1,640,000 EXP
A weak, but fast-evolving pokemon like Metapod would be in the Erratic or fast group, while more powerful pokemon like Dragonite or Tyranitar fall in the higher EXP range.