Sounds good blowdart, except I'm limited to .NET Framework 3.5 and Task does not seem to be available in my .NET references... 

I'm currently looking into BackgroundWorker, I've been reading a bit on it and it sounds pretty good. I wasn't too worried about Threads using up too many resources because I spawn very very few of them anyways, but it doesn't hurt to recycle. 

You guys have been of great help though.