There is no auto-retry feature in Ftp.dll. There is no way to create a 'simple' retry mechanism, if your code is complicated. I mean - if you perform complex tasks you need to record what has been done already, and what needs to be performed in future.
There are two Upload method overloads, you can use to start uploading at specified remote file position (Your server must support REST command in such case)
FtpResponse Upload(string remotePath, long remoteStartPosition, Stream source)
FtpResponse Upload(string remotePath, long remoteStartPosition, byte[] data)
You can ether record the number of bytes already transferred using Progress event or better getting the file size, just before you retry the upload.
All errors are reported as standard .NET exceptions. FtpResponse exception means the server returned an error - it means that you don't need to reconnect. All other exceptions may mean there was a communication problem and you need to reconnect.