Pokémon Eggs

Eggs can be obtained from PokéStops around the world. Eggs contain Pokémon, and must be hatched.

Description
They can be selected from the Poké Menu -> Pokémon -> the tab Eggs. Here you can see how many eggs a Trainer has and how many Kilometres (KM) you need to walk to hatch them.

To hatch a egg, a trainer needs to select an incubator, and then the desired egg.

To note that there are two types of  Incubators, one (received at the beginning of the game) has unlimited uses (orange coloured) and the others which have 3 times use (blue coloured).

After that, gameplay can carry on as usual, as Kilometres will be registered while the player moves with the app open. The distances are measured by GPS distance not by movement or number of steps. Once the required distanced has been walked, a warning is issued about the hatching. Tap the screen when you see the egg displayed with the "Oh?" message to watch it open.

Remember, the Pokémon Go app has limits on the speed you’re traveling, approximately 24km/h (15 MPH), so if you’re driving a car it’s very likely that the distances you travel will not be counted towards the distances you need to hatch your eggs.

A thing to keep in mind is eggs after hatching seem to have their CP based on the trainer level when they got acquired, not when they get hatched.

List of receivable Pokémon
Eggs have been observed to come in three types, based on the distance you must walk for them to fully incubate: 2 KM, 5 KM, 10 KM. The Pokémon from eggs always come with a fair amount of their specified Candy as well.