More .NET libraries
-
Rebex SFTP
.NET SFTP client
-
Rebex File Transfer Pack
FTP and SFTP together
-
Rebex Total Pack
All Rebex .NET libraries together
using (var client = new Rebex.Net.Ftp()) { // connect and log in client.Connect("test.rebex.net"); client.Login("demo", "password"); // download a file client.Download("/pub/example/readme.txt", @"C:\MyData"); }Show me more code...
Choose the right library: What's the difference between FTP, FTPS, SFTP, FTP/TLS, Secure FTP and SCP?
Looking for a standalone SFTP/SSH server for Windows? Try our Rebex Buru SFTP Server.
Why Rebex FTP?
Easy-to-use API
Login with... anything
Rich file API
Upload a file from the filesystem or memory. Rename and move files. Check existing files. Or perform other single file SFTP operations.
Or simply transfer many files at once. Upload and download whole directory structures. Use wildcards or file sets to specify which files to transfer. Monitor transfer progress with events.
Directory operations
Need to work with directories? List their content, create or rename them. You can even delete non-empty folders recursively (and handle symlinks properly) using a single line of code.
Powerful directory listing parser
The original FTP standard defined no standard directory listing format. As a result, listings used by different FTP server on different operating system are very diverse.
Fortunately, you don't have to worry about this with Rebex FTP. It's reliable listing parser has been under continuous development since 2003 and can detect and parse virtually any common directory listing format used by Unix, Windows, Netware, DOS, VMS, IBM 4690 or Tandem Guardian FTP servers.
Even if you come across a rare format which is not yet supported out-of-the-box, can still easily add your own custom directory listing parser .
Secure file transfers
Rebex FTP supports both plain FTP and secure FTPS (FTP over TLS/SSL). This protocol ensures that the file transfers are secure and reliable. Rebex FTP supports both implicit or explicit TLS/SSL and provides a rich set of security features. You'll find APIs for TLS/SSL security, X.509 certificates, and more.
- TLS 1.3 on mainstream platforms including .NET 3.5-4.8.1 on Windows 7 (or Windows XP SP3 with plugins)
- TLS 1.2, 1.1, 1.0 on all platforms (including .NET Compact Framework 3.5/3.9)
- Elliptic Curve DSA and Elliptic Curve Diffie-Hellman ciphers (requires a plugin on some platforms)
- AES/GCM ciphers
- Elliptic Curve DSA and Elliptic Curve Diffie-Hellman ciphers (requires plugin on some platforms)
- SHA-2 certificates
- SHA-2 hashing algorithms
- Server Name Indication (SNI) extension
- Renegotiation Indication extension
- Support for legacy SSL 3.0 protocol
Trusted by thousands of .NET developers worldwide
Thousands of developers chose Rebex FTP for adding FTP and SSL capabilities to their applications.
Want an example? Just check your Visual Studio installation folders and you'll find Rebex DLLs there. It's because Microsoft uses Rebex FTP and SFTP in Visual Studio and several other products.
You'll be in a good company.
Many, many more time-tested features
Rebex FTP is a mature and stable library maintained since 2003. We have been adding new features year after year, inspired by user feedback. For example:
- Multi-file transfers
- Transfer progress monitoring
- Automated transfer resume
- Server to server transfer (FXP)
- IFtp interface - unified API for FTP, FTPS and SFTP
- Transfer speed limiting
- Ability to use FTP in SSIS, SQL CLR and PowerShell
- Symlinks detection and handling
- ZLIB compression
- FIPS 140-2 compliant mode
Platforms
.NET
.NET Framework
.NET Core
Mono
Xamarin.iOS
Xamarin.Android
Learn more about supported standards and platforms.
Legacy platforms
(not included in standard product packages - see more)
.NET Compact Framework
.NET Framework
Featured samples
-
WinFormClient - GUI FTP client (with 'await')
A complete Windows Forms FTP client. -
FTP batch transfer
Recursively transfers a whole directory tree to or from an FTP server. -
ResumableTransfer - resumable FTP transfer GUI utility (with 'await')
Windows Forms resumable FTP uploader and downloader. -
FTP client in ASP.NET
A basic FTP client implemented in ASP.NET.
Satisfied clients
It took me 10 minutes to plug it into our C# application and voila, passive FTP connections, excellent communication and error codes / messages when things don't connect properly via our VPN. This FTP library is excellent. I can highly recommend it.
Simon Hughes
Comprehensive FTP Library Is User Friendly.
What I liked best about Rebex FTP was its concise, easy-to-use API.
Scott Mitchell
I use Rebex FTP for .NET - not free but a great little FTP library.
David Duffett