To really determine the number of active threads, you need to check the ThreadState property for each thread.
((IEnumerable)System.Diagnostics.Process.GetCurrentProcess().Threads) .OfType<System.Diagnostics.ProcessThread>() .Where(t => t.ThreadState == System.Diagnostics.ThreadState.Running) .Count();
Nathan
source share