You can't easily migrate programs to your external hard drive. At best you'd have to uninstall them and reinstall, but I doubt that most programs would install to an external drive. Have you partitioned your hard drive? How big is your C: drive? If it's less than 100 GB, you need a bigger one. You can buy a 1 TB drive for as little as $70, back up your system with something like Ghost or Easeus Todo Backup, replace the hard drive, then restore to the new one. If you have an old tiny hard drive, that's what you should do. If you just have a small C: partition, get the free Easeus Partition Master and expand C:.

Good luck.