Hatching Eggs requires three things: An Egg, Egg Incubator and movement. After obtaining an Egg, it will come in one of 3 formats – 2 km, 5 km and 10 km. These numbers represent the amount of time you will have to move in real life distance (once the Egg is in an Incubator) in order for it to hatch.
Like expected, the higher the distance required the more rare the Pokémon will be that hatches. The galleries below shows the Pokémon expected to hatch with each Egg. In addition to distance, Trainer level plays a part in the strength of the soon to be hatched Pokémon. The level cap on Eggs is 20. This means once you past Level 20 Eggs will produce the same Hp/Cp Pokemon as they did when you were Level 20.