Microsoft Office Interop (Excel Automation) in C# and VB.NET

Microsoft Office Interop (Excel Automation) is an option when creating/reading Excel files (XLS, XLSX, CSV) from C# or VB.NET application, but it has many drawbacks.

Issues when using Microsoft Office Interop (Excel Automation) from C# or VB.NET are:

  • Requires a license for Microsoft Office on every client machine.
  • Requires that all client machines have the same version of Microsoft Excel installed.
  • When using Automation, Microsoft Excel is loaded in the background, taking few MB and loading a large number of files and DLLs.
  • Microsoft Office applications (including Excel) were designed as UI applications and because of that API is very slow. Generating a single worksheet with 200 rows and 100 columns takes 239.4 seconds on our test machine.
  • Microsoft doesn’t recommend using Excel Automation (or any Office Interop) on the server:

We are proud that our Excel .NET library is one of the best alternatives for Microsoft Office Interop (Excel Automation).

GemBox.Spreadsheet Free comes free of charge while GemBox.Spreadsheet Professional is a commercial version (licensed per developer). Find more information about supported features.