¿Por qué .net Threadpool se usa solo para tareas de poco tiempo?

He leído en muchos lugares que .net Threadpool está destinado a tareas de espacio de tiempo corto (no puede ser más de 3 segundos). En todas estas menciones, no he encontrado una razón concreta por la que no deba usarse.

Incluso algunas personas dijeron que conduce a resultados desagradables si los usamos para tareas de mucho tiempo y también conduce a puntos muertos.

¿Alguien puede explicarlo en inglés simple con una razón técnica por la que no deberíamos usar el grupo de subprocesos para tareas de larga duración?

Para ser específicos, incluso me gustaría dar un escenario y quiero saber por qué ThreadPool no debe usarse en este escenario con las razones adecuadas detrás de él.

Guión: Necesito procesar algunos miles de datos de usuario. Los datos de procesamiento del usuario se recuperan de una base de datos local y, utilizando esa información, necesito conectarme a una API alojada en otra ubicación y la respuesta de la API se almacenará en la base de datos local después de procesarla.

¿Si alguien puede explicarme las dificultades en este escenario si uso ThreadPool con un límite de hilo de 20? El tiempo de procesamiento de cada usuario puede variar de 3 segundos a 1 minuto (o más).