I used to use a phillips karaoke mic (around $20). Now I'm using a Shure SM58 that my friend lent me. It's plugged straight into the pc, and I use Audacity to record.
It took some time to adjust the levels to get optimal recording though. The soundcard has an adjustable level, the windows mixer has an adjustable level, and Audacity itself has a third level. You want all to be as loud as possible without clipping. It's still not optimal but good enough.
PS: Audacity is free but Audition is commercial software. Not that that makes a difference these days, with bittorrent and all..