Parallel tasks are basically threads that can be shared. Since the number of active threads is limited by the number of available logical processor cores, we can assume that it is simply the number of logical cores available for the program.
Environment.ProcessorCount
source
share