Slang is mostly used by young people, it's ironic, humorous, used to make an expression more colorful. My teacher always asked me to use it carefully because in some situations slang is absolutely unsuitable. There are different kinds of slang - like football slang, university slang etc
An idiom also helps to make our speech more colorful and expressive but it can be freely used - it's neutral as to style.
That's what I know and how I understand the difference between these two things