I can't get past the few days part..... How big are these files anyway. I would think even if there were 1000 of them and they were 1 gig each that processing time would still be much less than a few days.

I would think the code could be changed to speed this up dramatically, There may also be some issue with a Virus scanner slowing things down.

That said Multithreading would allow the process to run on a different thread than the UI so the app would still be responsive while processing the data.

Speaking of the long data processing time the company I used to work for had a utility that processed and sorted data files and in one case it took a few days to process this one file. One day I had some free time and decided to look at the code [written by someone else] to see why it was taking so long to do this. I ended up moving one line of code to a different function, creating a few public variables and changing one of the parameters from byVal to byRef and the file processing of that same file completed in 16 seconds.