As always, the easiest way to clean up a mess is not to create one in the 1st place. Smart Disk Cleanup is the day's GOTD offer, which will do some cleanup for you -- you can fairly easily go further, but while it's not a terribly long topic IMHO, it is more than a comment on the download page...
I started by saying don't make a mess in the 1st place, & that holds true pretty much across the board. If you've got limited hard drive storage, which is common with SSDs to reduce cost, you can start by saving the files you download, along with stuff like pictures & video etc. on another drive. You can also often install software to another drive.
Some software will not give you the choice of where to install it -- you can sometimes get away with moving the program's folder anyway -- sometimes when that doesn't work you can get it working by searching the registry for the original location on C:\ & then changing those entries to wherever you moved the app. Needless to say, backup 1st in case it doesn't work.
If your device doesn't have room for a 2nd hard drive, e.g. a tablet or laptop, some software will not install to USB connected storage... you can however create a VHD on that USB storage, & when it's mounted Windows will see it as a regular hard drive or partition, & most software will install there. It's not an ideal situation but it works... you have to make sure it always is assigned the same drive letter, so you can't for example have a USB stick plugged in when you start Windows. You can automate mounting the drive using a task in Windows Task Scheduler or similar 3rd party software. This also works for SD cards.
You can set Internet Explorer, 10's Edge browser, & Firefox to delete temporary files in the cache when you close the browser. All the major browsers have something buried in the settings where you can delete those files, & cookies & history etc., & for Internet Explorer you can also go to Control Panel -> Internet Options. You can go to Control Panel -> System & click System protection [on the left panel] to turn System Restore on/off, set the max space it can use, & clear whatever's stored currently, & you can do that for each partition or drive.
If you use Hibernation with your device, fine, but if you don't you can turn it off & get rid of the large file it uses to store your system status... from a command prompt run as admin, type powercfg /h off -- powercfg /h on turns it back on -- powercfg /? for help. If using Windows Explorer you right click a folder, select properties, then click advanced, you should see an option to compress the files to save disk space. Windows 10 goes further with the Compact.exe app, which is also used from the command line run as admin -- compact /? for help -- compact /compactOS:always & compact /compactOS:never turn the compression of Windows files on/off.
If you're using Windows 10 you can uninstall some of the default store apps using 10's Settings app from the start menu -- you can get rid of some only by using CCleaner however. Using Settings you can also set their install location to another drive or partition, though this can cause you some grief in my experience if you install a misbehaving store app.
When you install some software it takes up significant storage in the ProgramData folder &/or folders like My Documents, Pictures etc. -- you can relocate folders like My Documents by right clicking the folder, selecting properties, & then the location tab, but stuff stored in ProgramData can be more difficult. An app may store GBs of samples or data there, & you may or may not be able to set a new location in the app's preferences or options or by editing the registry. Sometimes you can get away using a simple shortcut named the same as the original folder where those files were stored. Sometimes a junction will work [something like the C:\ Documents and Settings folder you see in Windows Explorer but that really isn't there], but that's beyond the scope of this discussion -- I just want to say it's available as a potential solution.
Sometimes software will add a copy of its setup file under ProgramData, or the setup files for any updates or patches -- a general rule of thumb, if an app says that there's an update, if/when possible download that update outside the app, since letting the app download & install the update for you increases the odds that update install file will be stored under ProgramData. You can look for, find, & relocate installation files in the various sub-folders under ProgramData, but keep track of what you move from where, because you may have to put it back to later uninstall the software.
Windows has another folder that you can pay attention to -- C:\Windows\Installer. Software installs, especially those that use .msi files [Windows Installer], can store a copy of the setup files there. For me, many of those setup files are more than 500MB, so I sort the view in Windows Explorer by file size, then move the largest elsewhere. I also look at the properties -> details tab for each one I move, noting what app it belongs to, including that in the new folder name where it's stored or in a plain text file, because you may have to put it back to uninstall the software. In my case going through the extra work saved me ~10GB+, so IMHO was worth it.
Windows Update can over time add several GB of files... Sometimes there are also backup folders in C:\Windows\SoftwareDistribution\ making matters worse -- after a backup I've deleted those backup folders with no apparent side effects. You can get rid of unneeded Windows Update files using the Windows Disk Cleanup app -- there's a shortcut in Control Panel -> Administrative Tools, or you can right click a drive or partition in Windows Explorer, select properties, & click the Disk Cleanup button. You'll have to run cleanup 1st, then click the button for system files to run it a 2nd time, & you'll get a dialog with check-boxes where you select what you want to remove. Note that in Windows 7 cleaning up Windows Update files comes with a Big caution... the next time you run Windows Update it can take a very long time as Windows apparently rebuilds a update catalog.
Before I install an app or update there's a favorite procedure I usually perform, but it's more because of something that bugs me, rather than saving huge amounts of disk space [though it can save quite a bit over time]. Software written using Microsoft's dev software often requires C/C++ runtime files. Often the .msi installer for those files is bundled with an app's setup file, so when you run that installation routine you get those runtime files added to C:\Windows\WinSxS\ -- it does not matter if they've already been installed, you'll get another copy anyway. That WinSxS folder gets positively Huge.
So I usually try Universal Extractor to see if I can get & run just the software's setup file, rather than the bundle, or I run the setup routine, watch as files are unpacked, check to see what's unpacked in the user temp folder [C:\Users\ [UserName]\ AppData\ Local\ Temp\], & if the software's setup file(s) is there, copy it somewhere else, canceling the running setup routine. If it doesn't work I just run the full setup again. If it does work I've just saved that WinSxS folder [& the registry] from growing a bit more.