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: https://support.microsoft.com/en-us/kb/257757

We are proud that our Excel .NET component 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.