"Pollute" is more general. It always refers to something harmful to health in some way, and usually talks about something large in scale. Eg. air pollution (harmful to health), noise pollution (harmful to mental health), light pollution (harmful to wildlife) etc. You could say "this lake is polluted" if people have been dumping chemicals in it.
"Contaminate" has a much more specific meaning. It's really a scientific word and is used when you have a sample of one substance which, for some reason, you need to keep pure. Let's say you were doing an experiment with salt. If some sand got into the salt, you would say the salt has been contaminated with sand. Contamination is always "with" something, and it doesn't have to be harmful to health, just unwanted.
This meaning is used in a more everyday sense for similar things. For example, you might say that a certain batch of milk has been contaminated with something that makes it turn sour more quickly - because the assumption is that you want milk to stay fresh as long as possible. It would sound odd, in this case, to say "the milk is polluted".