Web applications (.jsp / Java) have the advantage that they can be run from any client browser by putting a single URL into the address bar, and off you go. However, the average web application is slow, clunky, and maintaining the code behind it is hell on earth.
Conversely, a typical desktop application (Java / c#) can have a slick interface, snappy response, and the code behind it is often much neater, compartmentalised, and often a pleasure to work with.
Is there a way or technique to connect to a remote server through a Java / c# desktop application, that can be distributed to any Windows computer, that doesn't first require the computer to connect to the remote server through a VPN, as a separate user procedure? (Usernames /passwords / connection details will obviously need to be stored in a config file associated with the application).
The remote server would be hosting a 'communal'(?) SQLServer database, and I suppose, possibly some files.