Horse is a Germanic word, where all its languages are little different from the Proto-Germanic root of hursa. This in turn is derived from Proto-Indo-European kurs meaning 'run', a very apt description of a horse. Note the Greek term 'equine' has taken different route, coming through the Greek and ultimately Proto-Indo-European ekwa or 'horse'.
Stallion came to English from the French where around the end of the twelfth century staloun described 'a male horse used for breeding'. It shares an origin with Old High German stal meaning both 'stable' and 'stall' and where breeding stock would be kept.
Mare is another Germanic word, this from the Proto-Germanic root markhjon originally meaning simply 'horse'.
Foal once again has a Proto-Germanic root. Here fulon ultimately comes from Proto-Indo-European pulo meaning simply 'young of an animal'.
Cannon is the large bone, once simply the middle toe of the earliest horse known as Eohippus, fused to give the creature added height. Undoubtedly this name comes from its resemblance to the tapering barrel of a cannon, itself ultimately meaning simply 'tube'.
Coronet is the upper, almost circular part of the hoof and thus is almost identical to that worn on the head and thus took the name.
Croup is the name given to the topmost part of the hindquarters and associated muscle, it gets its name from the French croupier which, prior to its modern usage, described 'one who rides behind the other' and referred to where the second individual sat.
Fetlock is the tuft of hair behind the pastern joint of the animal. This Germanic term is from fetel and ultimately from Proto-Indo-European ped-el and originally referred to 'the foot part'.
Flank, the fleshy part of the side, came to English from Old French flanc 'hip, side' and ultimately from Proto-Indo-European kleng 'to bend, turn'.
Hock, the joint in the hind leg of the animal, corresponds to the ankle joint in humans but derives its name from Old English hoh and ultimately from Proto-Indo-European kenk 'heel'.
Hoof is a Germanic word, ultimately from Proto-Indo-European kop meaning 'to beat, strike' and imitative of the noise made by the horse as it walks.
Loin, the side of the animal, gets its name from its use as the choicest cut of meat as food. Less appetising is how the same word also gave us 'lumbago'.
Mane is yet another traceable back to Proto-Germanic where mano, and the ultimate origin of Proto-Indo-European mon, simply meant 'nape of the neck'.
Pastern has only been used for a part of the leg since the early 16th century. It came from the tether known as a pastern used to keep the animal, not just the horse, where it had been left. This, in turn, shares an origin with 'pasture' and even 'pastor' as the early animals were tethered in the pasture rather than fenced in.
Poll is the occipital crest behind the ears, it shares an origin with the sense of electoral poll in that it refers to the head, and was originally used to refer to a haircut before it was also applied to trees and plants (as in pollarding).
Stifle, the equine equivalent of the human knee joint, does share an origin with the more often heard sense 'choke, suffocate' as both come from Old High German stopfon 'to plug up, stuff' as this is could easily be seen as a description of a joint.
Withers is that point just above the top of the shoulder blades and where the height of a horse is measured. It is this sense where Old English wither, also used to mean 'against, contrary, opposite', speaks of this being the point where the beast of burden would oppose the weight of the load.