Hello Snaren,
It's another good question of yours.
Actually, it's what I have ever asked my teacher.
1. "Slang" is used in a special way and we call it "an informal word" or "spoken word". It's a group of words used for a particular purpose; for example used by doctors. It can be ironic, humourous or sometimes rude. If you find some slangs in book, it means they are dead slangs (not many people use those now.)
Ex: "a guy" is a slang for "man".
2. Idiom is a group of lively words used to make words more colorful, full of fun. And idioms usually can't be translated literally.
Ex: "as good as gold= very good, to do something like a bull in a china shop = to keep knocking or breaking things...)
3. Expression is a group of words, commonly used together, for example: time expression : on and off; colloquial expression: to clean forget (forget completely)...but according to
http://www.english-test.net/faq/2/index.html, it seems like "an expression" can be called "idiom"; for example,
to get up can be called "an idiom" or "an expression".