Informal - This is directly related to register. It is mostly dictated by social status. One would use formal language in formal setting, such as business functions or any time when you are speaking with members of high/higher society.
Colloquial - This is geographical. There is only one language in England: English. However, two people from different cities might have quite notable difficulty understanding each other in conversation due to colloquialisms. They are often related to the history of the given place and can be influenced by things such as prevalent industry, local surroundings and historical events.
Slang - This tends to be more social. The understanding of slang is usually restricted to a group of peers. This could be a small group or a large group. They could be from very different places and backgrounds. Slang is formed more through mutual understanding and often to intentionally create an element of exclusivity. Because of all these factors, slang tends to change constantly and often does not last long enough to enter into common usage. Though it's a slightly lazy example, consider how teenagers speak. Each generation tends to have it's own slang. It is not constant. It exists for that group of people at that time. It is essentially a type of jargon.
Vulgar - This is a little different to the other terms. Each of the others refers to a style of speaking that an individual might adopt and would affect all elements of speech. This term however, is restricted really to vocabulary. Linguistically speaking, if a person is vulgar, it means that they tend to use obscenities. It might also refer to their selection of crass or crude conversation topics.
Hope that helps.