More .NET components
using Rebex.IO.Compression;
using (var zip = new ZipArchive(@"c:\temp\"))
  // add file
  // add all text documents from source-dir
Show me more code...
ZIP, UnZIP, Deflate, ZLib, GZip compression library for .NET Framework.

Why Rebex ZIP


  • Compatible with WinZip, PKZIP, Info-ZIP (and many others).
  • Easy to use API (see the tutorials).
  • Password protection (legacy ZIP 2.0 encryption method; WinZip compatible AES 128, AES 192, AES 256 encryption methods).
  • Protect existing ZIP file with password without the need of decompression of source ZIP file and temporary disk/memory space.
  • International characters in filenames (Unicode support).
  • Supports large files (over 4GB).
  • Multi-core compression support. The number of cores used for compression can be configured via ZipArchive.Options.CompressorCount property.
  • Wildcards support for adding, extracting and deleting files.
  • Advanced file filtering using the FileSet class.
  • Recursive directory tree operations.
  • Both stream and file based operations.
  • Possibility to access decompression stream directly.
  • Create ZIP files in memory.
  • Add data to ZIP file from stream or memory.
  • Written in 100% pure .NET.
  • Samples for command line, WinForms and ASP.NET.
  • All samples available in C# and VB.NET.
  • Add, extract, delete, move/rename files in ZIP archive.
  • Move capability makes it possible to delete source item after successful transfer.
  • 10 compression levels.
  • ZIP archive shrinking.
  • Events and delegates for effortless integration with your applications.
  • Component source code available (C#).
  • Deflate and Enhanced Deflate support (compatible with Deflate64(tm) by PKWARE).
  • Read/write comments within ZIP file.
  • Open self-extracting ZIP archives.
  • Thread-safe.
  • FIPS compliant mode in which only FIPS-approved modules are used.
  • Support for asynchronous operations including .NET 4.x-style task-based API.
  • Storing and restoring file dates and attributes (Read-only, Archive, Hidden and others).
  • Ability to inflate (decompress) directly to in-memory byte array.
  • Searching for files inside the archive by wildcard mask or FileSet (advanced file filter definition class).
  • Support for IEnumerable<T> in ZIP item collections (required for using LINQ).
  • All operations are done without any temporary files.
  • Archive contents listings with complete file details (original size, compressed size, creation and last modification dates, CRC checksum, comment).
  • Custom Deflate algorithm implementation - no dependency on any open-source ZLib compression libraries (unlike many others).
  • GZipCompression stream and GZipDecompression stream with multiple files support.
  • Zip.Options.RestoreDateTime property to make it possible to restore source date/time on target.
  • FileSet.Flatten option (makes it possible to ignore source directory structure and copy all files into single target directory).

Platform support

  • .NET Framework
    2.0, 3.0, 3.5. 4.0, 4.5.x, 4.6.x, 4.7 (32-bit and 64-bit) on Windows
  • .NET Core
    1.1, 2.0, 2.1, 2.x (32-bit or 64-bit) on Windows and Linux
  • .NET Compact Framework
    3.5, 3.9 on Windows Mobile, Windows CE, Pocket PC, Windows Embedded Compact 7, Windows Embedded Compact 2013
  • Mono
    3.x, 4.x, 5.x on Linux and Apple macOS (OS X)
  • Xamarin.iOS
    Xamarin.iOS 8.6 or later
  • Xamarin.Android
    Xamarin.Android 4 or later

Supports .NET Standard 1.5 (or higher) on .NET Core.

Experimental support for .NET Standard 1.5 (or higher) on platforms other than .NET Core.

Experimental support for Universal Windows Platform (Windows 10, Windows 10 Mobile, Windows 10 IoT).

Experimental support for Xamarin.Mac platform (assemblies are suitable for Xamarin.Mac Mobile and Xamarin.Mac .NET 4.5 Framework projects).

Licensing and support

  • Royalty free redistribution.
  • Includes 1 year support contract.
  • Includes all new versions released during 1 year.


Windows Forms samples

ASP.NET samples

Console samples (command line apps)

  • Simple UnZIP
    Demonstrates how to extract all files from a ZIP archive.
  • Simple ZIP
    Demonstrates how to create a ZIP archive and add files to it.
  • ZIP Console Utility
    Simple command line ZIP archive manipulation utility.
  • ZIP Info
    Command line utility that displays information about a ZIP archive.

Xamarin.Android samples

Xamarin.iOS samples

Pocket PC and Windows CE Applications

What next?