Well, i'm trying to work on explaining concepts like these in case i ever get a teaching gig. Here's another post on compression I made recently on the Sonar forums that I thought was well put, if I do say so myself.
The main thing to ask yourself when faced with the "should I compress?" question is "will it make it sound better?"
The way I see it, compression falls into three main categories:
Transient manipulation: This is when the attack and release settings are used to drastically alter the waveform of the incoming material. Mostly used with drums and bass with slow attack and fast release to make them "punchy" or "pumpy"
Leveling: This is using a compressor as you would your hand on a fader, riding the material so that the quiet parts aren't quite so quiet and the loud parts aren't so loud... reducing the dynamics (which a compressor always does, but in this case, you're trying to do it unnoticeably, with little distortion to the original waveform shape) slow attack and release, gentle ratios, soft knees, and make up gain are the key ingredients to this function.
Gain: This is what your mastering limiters (read: fast compressors) are trying to achieve. High threshold and fast attack/release times catch just the most transient of material, allowing you to brickwall headroom-robbing peaks and bring up the entire program to make the apparent level louder without clipping. This is usually only done in mastering, though it can be nice for certain elements in mixtime.
As you learn and experiment more with compression, keep these three main ideas in mind, and they will help you decide if compression is really required for any particular situation.
"Do I need to change the 'punchiness' of this sound?
"Do I need to smooth the dynamics of this track?"
"Is my track loud enough?"
something to keep in mind when asking "does this compressor improve the sound?" is the fact that louder almost always sounds better. Almost all compression, when makeup gain is applied, increases the apparent volume of your material. You need to A/B with an apparent-level-matched version of the uncompressed signal to truly determine if you're making it sound better through compression, or just louder.
Often times, it simply sounds better uncompressed, so why do it?