I was looking through my installed programs list and noticed thirteen "Microsoft Visual C++ Redistributable and ATL update" installs, from 2005, 2008 and 2010.
I also noticed a "Microsoft SQL Server 2005 Compact Edition", two "Microsoft .NET Framework installs (Client Profile and Extended)", two "Microsoft XNA Framework Redistributables (3.1, 4.0)" and three "MSXML 4.0 SP2s."
So, do I really need all of these versions or can I delete them and leave the latest one?
And, do I need that SQL server install, since I'm not running a server or anything?
No, do not remove any of them. Different versions are used by different programs. I have one 2005, two 2008, and two 2010 versions on my Windows 7, 64-bit laptop. Read some of the answers here for more details:
The first posting on that forum recommends that none of them should be uninstalled. The reason is that different programmers use different VC++ runtimes for different programs, and uninstalling one of the VC++ runtimes might cause one of those programs to crash.