Firstly your comment
"which read first worksheet (by default)"
isn't quite accurate - it's simply that the first sheet was active the last time you saved the spreadsheet ... if you had left the 2nd sheet visible before saving and closing the spreadsheet then the second sheet would have been read "by default"!
So to access the first sheet deliberately you need to swap
Microsoft.Office.Interop.Excel.Worksheet workSheet = (Microsoft.Office.Interop.Excel.Worksheet)workBook.ActiveSheet;
Microsoft.Office.Interop.Excel.Worksheet workSheet = (Microsoft.Office.Interop.Excel.Worksheet)workBook.Sheets;
Hopefully you can see now that you can get to the second sheet by changing the index to .Sheets (note that Sheets starts at index  not ), and that you could go through all of the sheets by using a foreach loop.
Also, if you don't mind me suggesting the following ... the "Microsoft.Office.Interop.Excel." scattered throughout your code isn't necessary if you use
at the outset. If you are concerned that this could clash with Application in other namespaces then you could use
using Excel = Microsoft.Office.Interop.Excel;
so the example above would become
Excel.Worksheet workSheet = workBook.Sheets;
Much easier to read.