Yes, they are different. According to linguists like Noam Chomsky, if you could find two identical words in any language which are totally the same. One of them should be removed from that language. But in reality, We cannot find such phenomenon.
If you want to find the exact meaning of each word that may sound identical, please check the meaning in English to English dictionaries. For example, you can use the Oxford dictionary or American Websters.
And as the answer to your question I can explain them:
Abolish is rarely used, it is more functional in the courts, abolish a law which means get rid of a law.
Discard is usually used when you want to get rid of something useless.
Eliminate is used for removing something from completion, sometimes removing something completely or even it is used as assassination or removing some person from power in politics (By killing or a coup)
As you see the word "Eliminate" is more powerful than "Discard"!