FTP component and FTPS component for .NET framework. It allows you to transfer files from your application using FTP and FTPS (also known as FTP over SSL/TLS) protocols. Written entirely in managed code. Works with .NET 2.0-4.7.2, 4.8+, 5.0+, Mono, .NET Core 2.0+, .NET Standard 2.0+.


  • FTP and FTPS protocols with SSL support (FTPS component supporting explicit SSL)
  • Fully compatible with Microsoft IIS FTP Service, Windows CE FTP Server, Gene6, FileZilla and others
  • Active and Passive FTP modes
  • UNIQUE Transfer compression (zlib) resulting in 3-4 times faster data transfers
  • UNIQUE Automatic directory listing parser for the majority of popular FTP servers on Windows, Unix and Netware platforms
  • IPv6 support (in both FTP component and FTPS component)
  • UTF-8 support
  • UNIQUE Checksum validation after upload and download (XCRC, XMD5, XSHA1)
  • REST command support - resume file transfers after interruption
  • MDTM (last modified time) and SIZE (the file size) commands support
  • Upload and download to or from memory or disk
  • Stream support - read from and write to remote files on the fly
  • Creating and deleting files and folders
  • UNIQUE Uploading files using patterns: file (*.txt) or regex
  • UNIQUE Downloading files using patterns: file (*.txt) or regex
  • UNIQUE Deleting folders recursively

What folks are saying about Ftp.dll

Quick start samples

        using(Ftp ftp = new Ftp())
                // or ConnectSSL for SSL

            ftp.Login("user", "password");
            ftp.Upload("report.txt", @"c:\report.txt");
You can find more samples here.

Our customers

Get Started Today