status of the currently transferring file is reported by TransferProgress event. How to register it shows following sample code.
Dim client As New Sftp
AddHandler client.TransferProgress, AddressOf client_TransferProgress
Public Sub client_TransferProgress(ByVal sender As Object, _
ByVal e As SftpTransferProgressEventArgs)
You can also check out the ResumableTransfer sample where the TransferProgress event is used.
When the transfer is completed TransferProgress event is fired and Finished property (of the SftpTransferProgressEventArgs) is set to true.
However, if any problem occurs during the transfer exception is thrown (no event with failed status is faired).