The below code works for me and does delete sheets as long there are more than three sheets.
private void buttonDeleteSheets_Click(object sender, EventArgs e)
{
Microsoft.Office.Interop.Excel.Application _excel = new _Excel.Application();
_excel.DisplayAlerts = false;
Workbook workbook = _excel.Workbooks.Open(@"c:\temp\cp.excel\ExcelDeleteTemplate.xlsx");
while (workbook.Sheets.Count > 3)
{
workbook.Sheets[workbook.Sheets.Count].Delete();
}
workbook.SaveAs(@"c:\temp\cp.excel\ExcelDeletedSheets.xlsx");
workbook.Close();
}