The whole issue here is that a microphone signal requires boosting (preamplification) of it's signal (raising its mV signal to "line level" or ~ 1-5 V) to be used by the computer.
The
"mic" port of your soundcard has a built in pre-amp to do this. The
"line in" port does not.
If you plug into the "mic" port, you will be using the sound card's pre-amp. Generally these are of pretty poor quality. So while it works, the results are pretty piss poor.
If you plug into the "line in" port of the sound card, then you
must amplify the signal somehow. Normally this is done by using a standalone preamp, or a mixer. In either case, the pre-amps in these devices tend to be of much higher quality than the ones built into a sound card, and consequently they should yield better sounding results.
Note, you can not plug a mic directly into the line-in connection of your sound card. (Well, you can
physcially do this

, but the signal is too weak to get any usable results. If you connect to the "line in", you need to pre-amplify the signal first.)