Лошадь is a general word for a horse.
Конь is also a general word, but since the word itself has a masculine gender it's usually used for male horses, but can be used as a general "horse" as well, especially in plural.
Also it's a name for a chess piece "a knight".
Жеребец is a stallion, a male horse.
Also it can be used to describe some men, something like "macho" or "woman-chaser".
Кобыла is a mare, a female horse.
Also it can be used to describe some women, something like "a robust woman", it's a rude term.
Кляча is a nag or jade (an old or worn-out horse).
Also it can be used to describe an old worn-out woman, it's a rude term.
Жеребёнок is a foal.