This is a chart of all the Egg Groups that are shared in Pokemon. If there is a straight line between 2 Egg Groups, there is at least a single Pokemon that is a part of both Egg Groups, and if not, there is not. Make note of the key in the top right corner. I based this off a similar chart that can be found here; http://pokemondb.net/mechanics/breeding. It was designed to cover up through Generation IV, and I just updated it to cover Generation V as well.
Chain-Breeding can also be used, not only for egg moves, but for IV-breeding as well. My friend Koga had an Eevee with a max Sp. Defense IV, and he wanted a Tentacool with that IV. Using the method described in the IV entry, he carried the IV from Eevee(Field) to a Seedot(Field/Plant), to a Paras(Plant/Bug), to a Skorupi(Bug/Water 3), and then to a female Tentacool(Water 3). He'll carry that IV down and breed Egg Moves into it from there. One thing he could do is teach a Mantine(Water 1) Aqua Ring and Confuse Ray, breed those into a Corsola(Water 1/Water 3), teach the Corsola Mirror Coat, and then breed with the female Tentacool(Water 3) while it holds the Power Band. The end result would be a Tentacool with Confuse Ray, Aqua Ring, and Mirror Coat that also has a max Sp. Defense IV...and a really weird family tree.
So that is the gist of chain-breeding, and you may just find it to be necessary at times(especially when you don't want the tainted blood of Smeargle flowing through the veins of your Pokemon). Thanks to Koga for allowing me to make use of his example of IV breeding. If you have any questions or feel I've forgotten anything, just leave a comment!
Brock out.