Home Components for Mobile FTP for Mobile

Ultimate FTP/SSL Component for Mobile

Easily add comprehensive FTP, FTP/SSL capabilities to your Android, iOS and Windows Mobile .NET CF applications

Ultimate FTP Mobile comprising three 100%-managed Xamarin Android, iOS, and .NET CF class libraries which helps you add File Transfer capabilities to your Mobile applications.

If you need Ultimate FTP for .NET Framework or Mono platforms, visit Ultimate FTP for .NET Framework for more details.

Ultimate FTP for Mobile is also included in


Like the Ultimate FTP component for .NET Framework, the Ultimate FTP Mobile minimizes your effort adding FTP and FTP/SSL functionality to your Android, iOS, and Windows Embedded Applications. With just adding reference to the required DLLs and some lines of code, your application is ready to connect and upload and download files and directories to and from the FTP, FTP/SSL servers. The component is fully-tested with many FTP servers including strict and buggy FTP servers. The high-quality component is backed with well-documented sample projects and excellent and timely support for your evaluation and development.

If you need SSH Secure FTP (SFTP) Component for Mobile, please visit SSH Secure FTP (SFTP) for Mobile Library page.

Key Features

  • All the standard FTP operations: Upload, download, append, rename and delete files and directories.
  • Supports for recursive operations on directories like removing, uploading, downloading, and synchronizing.
  • Supports for wildcards mask and regular expression.
  • Transfer files over 4GB
  • Automatically parse listings
  • ASCII and binary transfers
  • Supports resuming interrupted file transfers
  • Synchronizes folders easily
  • Supports Multi-threading to speed up file transfers
  • Single code can be used to connect, upload and download files to and from both FTP and SFTP servers.
  • File transfer monitoring support with progress event
  • Fully supports both event-driven (asynchronous) and blocking (synchronous) application designs
  • Send and receive files to or from disk or memory streams. This allows you to compress and decompress ZIP files on-the-fly
  • Built-in Zlib streams
  • Filter files on name with wildcards mask or regular expression, size, or last modified date
  • Resume previously interrupted file
  • Allows you to check the exact transferring state like uploading, downloading, etc.
  • Compliant with RFC 959, RFC 1579 and many common extensions
  • Progress event argument contains full information about the file transfer such as: File size, transfer percentage, transfer speed, time left, etc.
  • Compression support (MODE Z)
  • Reusable block mode transfer support (MODE B)
  • Raw FTP command and response support
  • See the complete feature list...

Sample Usage - Transferring files and directories

// Create a new instance of the Ftp class.
Ftp client = new Ftp();

// Connect to the FTP server.

// Authenticate.
client.Authenticate("user", "pass");

// Upload local file '\test.dat' to the default remote directory.
client.UploadFile("\\test.dat", "test.dat");

string defaultDir = client.GetCurrentDirectory();
Console.WriteLine(string.Format("File has been uploaded to '{0}'.", defaultDir));

// Upload .cs and .vb files to the current directory.
client.UploadFiles("\\temp\\*.cs;*.vb", "");

// Download .mp3, .wav and .jpg files from '/mydir' directory to '\temp'.
client.DownloadFiles("/mydir/*.mp3,*.wav,*.jpg", "\\temp");

// Upload an entire directory.
client.Upload("\\temp", "/");

// Download an entire directory.
client.Download("myremotedir", "\\temp");

// Disconnect.

Security and Reliability

The Ultimate FTP Component for .NET CF Framework also supports secure SSL and TLS connections. By simply setting a few properties, a secure connection using 128-bit encryption can be established, providing your application with the greatest flexibility and highest level of security available. Even advanced options such as client certificates are seamlessly supported. The security features are completely integrated into the component itself, meaning that there's no external dependencies on third-party components or libraries.

Supports HTTP Connect, SOCKS4, SOCKS4A & SOCKS5 Proxy Servers

Ultimate FTP fully supports HTTP CONNECT, SOCKS4, SOCKS4A, and SOCKS5 proxy servers. By simply setting a few properties, you are able to download and upload files and directories from/to FTP servers through the desired proxy server.

Support for IPv6, the next generation Internet protocol

IPv6 (Internet Protocol version 6), the next-generation protocol designed by the IETF (Internet Engineering Task Force), will gradually replace the current version of the Internet Protocol, IPv4.

With Ultimate FTP Component, users have an integrated service assurance solution that provides them with FTP, and Proxy capabilities in mixed IPv4 and IPv6 environments. This helps organizations with the adoption of and the transition to IPv6 by making the management of such networks seamless.

.NET CF Technology

By using 100% managed code written in C#, the Ultimate FTP component takes advantage of the numerous built-in features of the .NET CF Framework to enhance performance, moreover, the component is CLS compliant, and it does not use any unsafe blocks for minimal permission requirements.

Supports event-driven (Asynchronous) and blocking (Synchronous) Design

Most applications written with the component will be synchronous. Synchronous method gives you the ease-of-use, but it can only returns the control back to the caller after it has finished, meaning that it blocks the execution of the caller for a period of time. Using synchronous method is recommended when you only need to execute one FTP operation at a time.

You might decide that your design requires an asynchronous operation when it is needed to manage remote files simultaneously. Asynchronous methods provide a great deal of power. Asynchronous method is executed on a thread separate from the calling thread. Such operation is useful when an FTP operation is time consuming and other codes need to execute without waiting for the initial operation to complete. In addition, the user interface will be most responsive when asynchronous methods are used.


The component can be used with a wide variety of programming languages and different types of development environments. As it was written in 100% managed Visual C#, it is fully supported by languages such as Visual Basic, Visual C#, J#, Managed C++, Borland C# Builder, and Delphi.

Fully Documented

We know that no product can be complete without comprehensive documentation. This is why the product includes a Developer's Guide and a complete Technical Reference which documents every property, method and event supported by the component. A context-sensitive online help is included with the product which can be accessed directly from within the development environment.

Lots of complete FTP client samples in C# and VB.NET

In addition to the fully documented Developer's Guide and a complete Technical Reference, Ultimate FTP component also includes a number of samples with full source code which help you become familiar with the features of the component and provide code which you can re-use in your own applications. The setup package contains a complete Windows Mobile FTP client application and some other FTP samples.

Royalty-free and Unlimited Server Deployment

All ComponentPro products include royalty-free distribution, for unlimited site deployment. It means applications built using the Ultimate FTP component can be redistributed to as many end-users as needed without additional royalties or runtime licensing fees.


Our developers have been using the Ultimate Suite for over 6 mons now on an intranet web application. We were very impressed by the feature-set, the ease of use and the great online tutorials and code examples. I will recommend ComponentPro to my colleages.
Mark Deaney - CTO PowerCT
I have been a user of Ultimate Studio package for more than 3 months. Their components are powerful and flexible. I rate them 5 star for the developer support.
Chris Calzaretta - Senior Software Developer Quantesys