Egg Moves is a mechanic introduced in Generation II.
Description[]
An Egg Move refers to a move that a newborn Pokémon inherits from its two parents. Certain Pokémon like Magikarp cannot inherit any Egg Moves, due to having a very limited moveset, which is Splash in Magikarp's case.
If a person wishes to put in a certain amount of effort into breeding it is possible to breed a Tyrogue inheriting moves from each of its evolved forms (Hitmonlee, Hitmonchan, & Hitmontop) by carefully breeding of several Tyrogue's. One starts by either evolving a Tyrogue into one of if evolutions (unless you already have one of its evolutions use it) and then have it learn any of that form's moves that Tyrogue can inherit as an Egg Move (for example if it a Hitmonlee one can teach it Hi Jump Kick) then breed it with a Ditto to produce another Tyrogue and have it evolve into a different form from the one it was breed from. Via a careful process of Breeding, Evolution, and Breeding it is possible to breed a Tyrogue with move set consisting entirely of Egg Moves from each of its evolutions. An example of a possible moveset produced via this method could be Hi Jump Kick (Hitmonlee), Vacuum Wave (Hitmonchan), Rapid Spin (Hitmontop), Bullet Punch (Hitmonchan).
An advanced version of this method allows one to obtain certain Egg Moves from a Pokémon of a different egg group. For example, it is possible to create a Lickitung with the egg move Belly Drum by first breeding a male Poliwhirl (that knows Belly Drum) with a female Slowpoke to produce a male Slowpoke, which will inherit Belly Drum as an egg move and belongs to both Water 1 egg group and Monster egg group (basically bridging the gap between Poliwhirl's Water 1 group & Lickitung's Monster group). Then carefully breed the male Slowpoke with a female Lickitung, producing a Lickitung with egg move, Belly Drum (this is just one example of obtaining Egg Moves via carefully planned cross-breeding).