Eu percebo que esta pergunta é muito antiga, mas pensei em adicionar um método para qualquer pessoa que a encontrar.
@echo off
:: Connecting to VPN...
rasdial "VPN Name" user pass
echo Running RDP...
"Connect to Server.rdp"
echo Finished - disconnecting from VPN...
rasdial "VPN Name" /disconnect
O Rasdial é incorporado ao Windows e é usado para conectar e desconectar. Substitua "Nome VPN" com o que você chamou de conexão VPN quando configurá-lo. Substitua 'user' e 'pass' na primeira linha pelo nome de usuário e senha atuais para se conectar à VPN (mesmo que você tenha as credenciais salvas quando criou a VPN, o Rasdial exige que você as insira).
Como os scripts em lote são executados de forma síncrona, a rasdial concluirá a conexão com a VPN antes de abrir o arquivo RDP e, enquanto a sessão do RDP estiver aberta, o script em lote estará aguardando. Assim que a sessão RDP for fechada, o comando final será executado para desconectar a VPN. Simples!
Eu costumo colocar um atalho para o script em lote na área de trabalho e alterar seu ícone para o RDP normal (de C: \ Windows \ System32 \ mstsc.exe). Você pode optar por iniciar o script minimizado se não quiser que o usuário veja a janela cmd, mas eu gostaria de deixá-lo visível para que eles possam ver se há algum erro ao se conectar à VPN.