Non si dovrebbe richiamare direttamente Application.Terminate.
Non comprendo più che altro il nesso con quello che devi realizzare.
Per determinare se il server di destinazione è attivo, sarebbe sufficiente tentare di accedere ad uno dei file ospitati sulla macchina e verificare l'esito dell'operazione.
Ad ogni modo, nulla vieterebbe al server di diventare "inattivo" mentre l'applicazione è in esecuzione, o viceversa.
Vedere un errore per server non disponibile quando il server non è effettivamente disponibile, non mi sembra così strano o insolito.![]()