The sound card one is 50/50 for me, and strangely, my desktop computers are probably worse than my laptops.
One of the things I do with my PC is voice chat - a lot of voice chat. I'm on the phone via Skype probably 3-4 hours a day, dealing with company meetings, training, design sessions, etc. When I use my desktop PC, I plug my headset directly in to the jack on the front of the computer, since my motherboard can isolate the front and back as separate outputs. (I can actually have music or game sound go through the back while simultaneously having a voice call on the front jack.).
The biggest problem with on-board PC audio is hiss and what I call "digital" noise; you can actually hear little chirps as the mouse moves and a thumping sound as the hard drive does its thing. It's not really noticeable through the speakers, because they're farther away, but when I've got my headset on, the audio is right there, in my ear.
If you're getting a low frequency hum when you plug your PC into an amplified speaker system, a ground loop isolator may help. That may be necessary, regardless of whether you use onboard or outboard audio.
My solution has been to just get a USB audio interface. On my desktop PC, I"m currently using a Tascam 2 channel interface for most stuff. Moving to the outboard box gets rid of all of that noise.
But just because I can hear annoying noises in my speakers doesn't mean you are. My rule for audio has always been "good enough is good enough." If you don't hear annoying hiss or buzz, and if what comes through meets your needs, then there's really no reason to spend money improving your audio system. But if you do are hearing unwanted noise, an outboard USB sound box is a great way to fix your problems.
Here are some of the devices I've used in the past and had good luck with:
Creative Sound Blaster X-Fi Pro - this guy is nice because the software gives you an equalizer that you can use to balance out less than perfect speaker systems
Siig Inc. Virtual 7.1-Channel Surround Sound Usb Audio Adapter - This is what I use for VoIP on my laptop. Its chief benefit is the volume and mute controls on the device. I can mute the mic and headset audio separately from my main speakers, which makes it much easier to adjust the volume during conference calls, when one person is too lound and the other too quiet.
TASCAM US-125M Channel Audio Interface - I use this on the desktop PC I use for gaming. It has extra inputs on the back so I can pass audio through from other devices (like my XBox) to my speakers without using a mixer. It's great for recording, since it has level controls right on the front panel. It's not suitable for VoIP, though, as the mic input routes back out to the headset, so you always hear yourself.
Native Instruments Komplete Audio 6 - I got this guy when I was dabbling in DJ work. I've also used it for overdubbing audio in a machiname.
The other important tool to have in your audio toolbox is the aforementioned ground loop isolator. When you connect a PC to a grounded audio amplifier or mixer, you will almost always get a 60Hz hum in the audio signal. This is because PC power supplies are pretty terrible at delivering clean power, and your audio cord ends up carrying some of the power supply's load. This can also happen in the car if you plug your iPod or smartphone into your car stereo and a charger at the same time; you get a completely different set of noises, but the principle is the same: your car's electrical system noise is coming through the charger and then through your audio cord to the stereo's input preamp. (Good stereo systems have transformers on the input preamp, so this isn't a problem. My Kenwood and Pioneer stereos don't have this problem. The Dual I bought, thinking I was getting a good deal, was absolutely terrible about this.)