When I had XP, I found it incredibly easy to get my microphone to pick up good, high quality sound.

However upon getting Vista, I'm having trouble getting it to pick up anything quieter than shouts. I thought I'd fixed it yesterday when playing Team Fortress 2, as it seemed to work, but now it's gone back to its original state, except now all the settings are like they were and can't be put up higher. How do I get my microphone to pick up quieter sounds?

A quick solution is to hold it further away :)
May I ask what current settings you have?
Is this a built in mic or external one, if so what brand.
What brand is your sound card?

Further away makes it pick up even less sound.

Currently I have Microphone boost on and the microphone input setting is maxed.

The mic is an external very cheap headset from Tesco.

My sound card doesn't seem to have much of a brand... It was built into the motherboard, an Asus P5L-MX I think.

Control Panel/Speech Recognition Options
Redo your mic settings, it'll ask you to read a line and it may pick up more sound.
Also, it appears your computer is not too compatible with Vista, unless you increased your RAM and hopefully your processor. Other aspects such as your unlisted media card might not be compatible with Vista.
Also, test other mic's, that might also do the trick

Well it's a 2.8 GHz Pentium D processor with 1 GB RAM and an nVidia 7600 GS 512 MB graphics card.

Even without the graphics card MeshComputers reckoned it would be Vista Capable (I got it at the time of Media Centre Edition), and that's only using onboard graphics.

I honestly can't help any further than what I mentioned. My apologies, hopefully you'll get it figured out