I have found no way of dumping the stack on all threads in .NET. Neither a signal to be send to the process nor programatic access to all the threads. I can only get access to t
There is a variety of handy classes in the System.Diagnostics that can help you with debugging and gathering various tracking information, i.e. StackTrace.
There is a wonky Process class that can be used to get the number of executing threads but very few details. Use the following Snippet:
Using System.Diagnostics;
var threads = Process.GetCurrentProcess().Threads;
Okay after looking a little bit more it appears the easiest way to capture all the current stacks is through a mini dump and a tool like SOS or if you are running vista this.
Good luck.