I cannot think of any benefits to having multiple mains. It's not like a lot of work is done in it.  It's there mostly for execution control flow purposes.  The only place that I have seen something like multiple mains is in a computer virus. The basic idea behind those is to spawn another main(ok so, it's a proc, whatever) when something kills or suspends the other.

 

Since net4 arrived in my dev-workflow, I have stopped using threads anyways.  The Task Parallel Library works much better, by being more difficult to screw-up and more performant.