I am going to address the first issue, and entirely leave alone the second. I am not that familiar with how different applications work with the different versions of .NET Framework. But I somehow suspect that each one 'may' look for a specific flavor of .NET ---- but that's guesswork. So I leave on my system, whatever flavor of .NEt is on there, and do not go out of the way to get the latest.
Anyhow, on the issue of uninstall folders for Windows updates & service pack upgrades.
Can they be safely moved to a different storage medium such as a CD or another drive?
Yes. They are only needed if you need them to actually uninstall.
Can they be safely deleted after some reasonable amount of time? yes. See the longer explanation below.
Or are they best left where they are?
If you have oodles of space, why bother. <g>
Here, hopefully, is a more general explanation:
If you are really double-sure positive you'd never want to undo old patches from Windows Update--
then you could delete the individual $NtUninstallxxnnnnnn folders.
Just know that would make the patches un-installable .
Those are individual hotfix un-install folders. You may delete those.
The registry will have leftover entries; so if you wish to square that away, you need to get into Add/Remove Programs,
select these items. It will fail the uninstall, and then allow you to remove listing from registry.
Also, be aware, if you made recent 'optional' updates 'after' installing a service pack ---
then those would be among that set of folders.
If you will never need to un-install the service pack, the $NTServicePackUninstall$ folder can be removed. To cover your bases, burn the folder to CD/DVD and then delete.