Breeding requires two Pokémon, usually one male and one female of the same egg group, to be put in a Daycare. Some Pokémon cannot breed and are in their own No eggs group. Ditto is a wildcard because it can breed with anything and can be used in place of either gender. Ditto must be used to breed with Pokémon that are Genderless, such as Voltorb or Rotom.
Every 256 steps made, the game will check if the Pokémon in the Daycare are compatible and ready to make an egg. The following chart tells the likelihood of getting an egg from the Daycare man, based on the circumstances. If Pokémon are incompatible, they have no chance of breeding. Different species with the same OT have a 20% chance of breeding. The same species with a different OT have a nearly-70% chance of making it work, while different species with different OTs—or the same species with the same OT—share a 50% chance of success.
The offspring that hatches from the egg will usually be the first stage of the female species' (or the non-Ditto parent) evolutionary chain. It will be level 5 in Gold, Silver, Crystal, Ruby, Sapphire, Emerald, FireRed, and LeafGreen and level 1 in Diamond, Pearl, Platinum, HeartGold, SoulSilver, Black, and White.
There are a few oddball Pokémon out there that can have offspring of different species. Nidoran♀ can produce Nidoran♀ and Nidoran♂ as offspring and Illumise can produce Volbeat and Illumise as offspring. Also, certain species have Baby Pokémon that can only be obtained by having one of the parents hold an Incense. If you breed a Marill or Azumarill and have it hold the Sea Incense, they will produce Azurill but without it, the parents will produce Marill.
The egg groups are Monster, Water 1, Water 2, Water 3, Bug, Flying, Ground, Fairy, Plant, Humanshape, Mineral, Indeterminate, and Dragon. You may be asking "How do I know what egg group my Pokémon are in?" Bulbapedia lists what group each Pokémon is on its page, in the infobox below the Gender ratio and above the EV yield. You may be able to guess based on the appearance of the Pokémon, however. The Bug egg group has mostly Bug-type Pokémon like Caterpie, but it also has some bug-like Pokémon such as Trapinch. The Ground egg group mainly contains land-based Pokémon and is the largest egg group.
Pokémon inherit TM and HM moves from their father. In other words, if the father knows moves that the females’ lowest stage can learn via TM or HM, that move may be passed down. If both parents know a move, and the offspring can learn it, that move may be passed down. Most Pokémon have a selection of moves that can only be learned through breeding, known as egg moves. These are also passed down by the father. Certain combinations of egg moves are impossible because the male needs to know the moves in order to pass them down. For example, Charmander cannot get Dragon Dance and Belly Drum because none of the compatible parents can learn both moves. Pokémon in the Ground egg group can use Smeargle as the father and use Sketch to get any combination of egg moves.
Some moves are tricky to breed onto offspring. They require what is known as “chain breeding.” Chain breeding passes on moves that were learned as an egg move. If you wanted a Cleffa with Belly Drum, you would first need to breed Belly Drum onto a Marill or Azumarill using something from the Poliwag family.
Since Pokémon Emerald, Pokémon have had a way to pass down their nature. If the mother (or Ditto) holds an Everstone, there is a 50% chance the offspring will have the same nature as the mother (or Ditto). In HeartGold and SoulSilver, either parent can hold the Everstone to pass down their nature. This “Everstone trick” will not work if the parents are from different countries.
That's about it! Get over to the Daycare Center, find a few compatible Pokémon, and look forward to some eggs!