Here is the tool spacesniffer. This is a vary basic tool ehich help you to analyze where your disk space is going.
*dl.dropbox.com/u/64595407/SpaceSniffer.exe
Regarding WinSxS folder:
As mentioned, Windows stores the old dll’s and library components in the WinSxS folder. Now if a newer version of this file is a part of the OS, but a particular application requires a particular older version for running, then the older version from the winsxs folder will be used, leaving the newer version in its present place, for other applications which may require it.
So obviously you cannot delete this directory or move it elsewhere. Nor is it advisable to delete anything here, as such a step could probably make your applications un-workable or even break your system! If you have many applications installed, you can expect to have a jumbo sized winsxs folder.
If you delete components from the WinSxS folder like the manifets or the assemblies, etc, you could be in trouble. Each system would react differently. What may work for one could break another! For instance, if you install a program that requires that particular assembly, which you may have deleted, then that program will just not run! Compressing the folder is also a no-no, as it could cause problems during WindowsUpdates or while installing a Hotfix.
The safest way to clean it, is by simply uninstalling applications which you don’t require. However, this too is not fool proof, as many applications still leave behind their files here, since they may be shared between other applications. So the probability of dud unused dll’s being left behind is quite high.
We would not advice the use of WinSxS cleanup tools like WinsxsLite as you could end up breaking your Windows.
And if you are into trying out new software or installing and uninstalling frequently, you may notice that your winsxs size is indeed large, as Windows will store multiple copies of these dll files, in order to let multiple applications without compatibility problem.
Source