Respostas:
RDP é semântico. O RDP está ciente de controles, fontes e outras primitivas gráficas semelhantes. Isso significa que, ao renderizar uma tela na rede, essas informações são usadas para compactar o fluxo de dados significativamente. Por exemplo, se você sabe que essa região da tela está ocupada por um botão, com a cor cinza, não é necessário enviar uma imagem do botão pela rede, mas apenas informações como a localização desse botão, tamanho e cor.
O VNC é "burro" a esse respeito e funciona amplamente enviando as imagens reais pela rede.
O RDP está fortemente acoplado à plataforma Windows, enquanto o VNC está disponível para a maioria das plataformas. O RDP também é visto como muito mais eficiente que o VNC, devido à vantagem semântica.
RDP significa Remote Desktop Protocol e é um protocolo proprietário desenvolvido pela Microsoft. ( Mais da Wikipedia )
VNC significa Virtual Network Computing e é independente de plataforma. ( Mais da Wikipedia )
Embora eu tenha visto os termos trocados, o RDP geralmente é usado para se referir à conexão com um PC com Windows. Os PCs com Windows possuem o RDP embutido, mas existem clientes para Mac e Linux. Os usuários do Linux podem usar o rdesktop para conectar-se a um computador Windows.
O VNC requer um cliente separado em execução em um PC, mas é independente da plataforma, para que eu possa ter um cliente VNC no meu PC e conectar-me a uma caixa Linux executando um servidor VNC. Os programas VNC geralmente podem se conectar entre si e geralmente incluem outros recursos que o RDP não inclui, como compartilhamento / transferência de arquivos e bate-papo com a pessoa no outro computador.
Nosso próprio Jeff Atwood ainda tem um artigo de Coding Horror de 2005 sobre os dois protocolos.
Adicionando um pouco de informação sobre outras respostas que encontrei ao fazer uma pesquisa ,
RDP ,
VNC,
Semelhanças entre ambos,