Open a new console with every new Thread in C#?
A process can be associated with only one console
http://msdn.microsoft.com/en-us/library/windows/desktop/ms681944(v=vs.85).aspx
It's not difficult to work around this limitation.
The code that you want to run as a separate thread with its own console window, simply code that as a separate console application, passing parameters as required on the command line.
Then run separate instances of this code using Start() inside your main application.