I had a for loop that i converted into a parallel for loop which works fine.

I'd like to be able to report progress too. I'm guessing i'll have to stop using the parallel.for and set up each loop iteration as a task, then report progress when any task finishs, baseing the progress reported on the number of tasks still running.

I'm not too sure how i go about this though, or whether there's a better way.

P.S. although i'm using .net 3.5 with the parallel extensions... where's the 4.0 prefix!