For colons: I think I use them instinctively.  I use them when introducing a list of objects, when I've introduced an object and I'm now stating what that object is (see the second sentence in dashes below), or when I'm expounding on an object (like in the first sentence of this paragraph).  I'm not entirely sure if I use them correctly though. 

For semi-colons: I don't use them enough. 

  I have long been confused by semi-colons and just recently have started to force myself into using them.  Lady Elanor and kingjon hit the proverbial nail on the head about their use. When you use two sentences instead of a semi-colon your writing can come out choppy, etc... because it doesn't have a short enough pause (though, of course, there are no 
real rules in writing and there are always exceptions to the rules).
For dashes: I use them instinctively and I'm fairly confident that I use them correctly.  The two kinds of "dashes" being discussed go by different names: one is the 
hyphen, and the other is the real 
dash.
A hyphen is used when joining certain words together to make another word (example: son-in-law) and when splitting up a word at the pronunciation conjunctions so... well... I've never really understood why people split up a word when it hits the edge of the page, but there must be a reason because it happens all the time in books. 

A dash is used when placing emphasis on an parenthetical element and is often used to indicate that the person speaking is stuttering.  When writing, a dash is slightly longer than a hyphen.  When typing, a dash is two hyphens put together (some programs will automatically join two hyphens into a dash).  One thing that has really helped me to distinguish between when to use parenthesis and when to use dashes is to ask myself how much importance I'm placing on the element I want to close off.  If I want to place a lot of emphasis on what I'm cordoning off, I use dashes (I'd give an example, but for some reason my mind is drawing a blank right when I need it 

 ).  If I want to place minimal emphasis on what I'm cordoning off, I use parenthesis (example: look at any of the sets of parenthesis I use throughout this post).
I hope my monster post is helpful. 
