So let's be clear your question has so many prior discussions that I will not possibly note all the ways to cut back.

1. To move an app (program) I uninstall and reinstall it but watch for an opportunity to install to my other drive.
2. When I do this I MIMIC Windows current Program folders I have on C to keep things almost like what you see on drive C:

3. I ALWAYS TURN the following off:

4. If everything is working fine, I will turn off System Restore then turn it back on.