The Vernacular refers to the native language of a person/persons, and has established norms. A colloquialism refers to an informal way of speaking. Technically, a colloquialism exists within a vernacular (because everyone has a mother language and that language will have colloquialisms). Another difference is that "vernacular" refers to a language, while "colloquialism" refers mainly to individual words.
A colloquialism is a type of informal word used for fast speech: gonna instead of going to, wanna instead of want to, kid instead of child (in an instance where the speakers know they are not referring to young goats instead), coke instead of coca-cola, etc.