VNC и RDP кардинально разные технологи, первая предназначена для трансляции консоли машины (буквально, то что подключено к монитору и клавиатуре с мышкой) а вторая - для множественных подключений к серверу, с симуляцией консоли (т.е. не настоящий монитор, клавиатура и мышка). В десктопных ревизиях windows rdp кастрирован и лимитирован только физической консолью.
Второе различие качестве реализации, vnc (и всякие anydesk/teamviewer/steam remote/.., основанные фактически на том же) транслируют содержимое экрана без привязки к его обновлениям (с оговорками), когда как rdp в основе своей работает с фактическими обновлениями win32 gdi (правда там наплодили версий и последние серверные могут гораздо больше чем просто их трансляция), в результате на слабых линиях связи и не графических приложений (перерисовывающих весь экран постоянно) rdp может оказаться отзывчивее чем vnc... с другой стороны какой-нибудь steam remote при хорошей ширине канала и низким пингом даст будет эффективнее и менее лагучий для сложных приложений.
Теперь по поводу надежности - очень важно, настраивать инфраструктуру максимально защищенной и отделенной от интернета какой-нибудь специализированной прослойкой, типа VPN или ssh (например в linux x2go из коробки работает с ssh), любой сервис, открытый в интернет без защиты - это +1 к уязвимости, еще одна вероятность появиться багу и дополнительное время на ожидание его закрытия.
p.s. rdp в windows очень лакомный кусочек для хакеров, а зная как майкрософт лажает из года в год, ставить на то что это будет надежно я бы не рекомендовал.
С другой стороны у vnc тьма реализаций (приложений клиент и сервер), и скорость исправления багов (и ответственность за это) в них значительно ниже чем у майкрософта.
поэтому поставь vpn по надежнее