Pokémon eggs are produced by breeding two pokémon of a compatible egg group and opposite gender together, and will contain by default the lowest species in the evolutionary line of the mother. It is said that no one has ever seen a Pokémon lay an egg, and so it is not confirmed that this is how they appear. No alternate explanation for their creation is offered, however, Timothy has started that he has seen pokémon lay an egg on several occasions though this has yet to be told.
Some Pokémon, known as Baby Pokémon , are often only found by hatching them from an egg created by their evolved forms. Unlike some species which cannot breed, baby Pokémon evolve into species which can do so. In the past a majority of Legendary Pokémon could not cannot breed in captivity, and thus cannot produce eggs of themselves, though a notable exception to this was made with Manaphy and Phione. However nowadays most non-breedable pokemon are capable of breeding though scientist haven't completely figured out why, though many suggest that it has something to do with the Pokémon Cloning Project, done by Yucon Corp in the Jetix Region.