Hi ljruiten,
you need to use the Sftp.PutFile method that will allow you to upload the file under whatever remote name you choose:
Sftp sftp = new Sftp();
sftp.Connect("server");
sftp.Login("user", "password");
sftp.PutFile(@"C:\localFolder\localFilename.txt", "remoteFileName.txt");
The Upload method is primarily meant for batch file transfers (transferring multiple files with one method call) and due to its nature it only accepts remote directory as an argument and not a complete remote path.