Semi-colons (;) are used to join two relating clauses together, which could have been separated by a full stop. An example would be "It was raining outside; Colin picked up the umbrella". These are two separate clauses, but there is an implied relation between them. Colons (:), on the other hand, are used to introduce or to define something, such as "there is one thing that Colin hates the most: rain". It's useful to think of them in terms of the weight they can carry. For example, the clause "it was raining outside" has a similar weight to the clause "Colin picked up the umbrella". They both convey information of a similar weight, and can be sentences by themselves; therefore, a semi-colon is used. But the clause "there is one thing that Colin hates most" and "rain" each carry a different weight, as "rain" isn't in itself a sentence, and doesn't tell us much information. So, for this example, a colon must be used.