OleDb is still the preferred method for reading data from Excel with .NET. If you need to see the connection string,
check here.
As far as exporting to Excel, I've been using a little class called
GridViewExportUtil. You basically create a GridView, bind your data to it, then call GridViewExportUtil passing your gridview and a filename. It pops up as a csv download, which for most people opens in Excel.