To improve performance you need to minimise the use of the Excel COM interface.
I would suggest converting your list of objects to a datatable first and then exporting that to excel ...
Here is a generic way to convert a list<t> to a datatable
Converting a List to Datatable[
^]
and here's how to export it to Excel
using XML[
^]