Есть два самых серьезных процесса в windows, из-за которых наибольшая нагрузка
у тебя тачка введенная в домен будет делать DNS запрос на доменные ресурсы и в ответ получать внешний адрес (да, не всегда внешний, но ты не может это контролировать)
int bytesReceived = recv(ConnectionClient, msg, sizeof(msg)-1, NULL);
char msg[257];
общие папки правильнее...
А зачем их "делать"? VPN-сервер в Windows Server из коробки(RRAS называется), доступен по протоколам PPTP(устаревший), L2TP+IPSec, SSTP.
C IPSec есть тонкость: если сервер находится за NAT, то по умолчанию он откликаться не будет, по соображениям безопасности.
Только вот делать выделенный VPN-сервер на VDS под Windows - это, скорее всего, напрасная трата хороших денег: провайдер хостинга должен же как-то отбить дополнительные затраты на лицензию, и он так или иначе переложит их на вас.