20 гигов свободного места, хочу все установленные программы туда перетащить
ТО есть я правильно понимаю, что есть два диска, все программы на D:\ и на C:\ осталось много места, которое хочется использовать, так? Если да, то советую:
1. Задуматься о том, почему так было сделано.
2. почистить диск D:\ Ни в жизни не поверю, что там все меганужное.
3. Купить второй винчестер. Винчестер, размером в 1 Тб (!) нынче стоит примерно 3 килорубля.
ИМХО, я бы не стал переносить программы на C:\ Я бы скопировал гостом образ диска на внешний винч, форматнул бы имеющийся жесткий и накатил бы из образа с изменением размеров - С:\ ужал бы, а D:\ расширил. Аналогично можно из образа все это с изменением размеров на новый винчестер, если нет возможности поставить второй диск.