Вероятно, пул потоков.Пул потоков создаст для вас кучу потоков, так что при их использовании вам не придется нести расходы на раскручивание нового потока в этот момент.пул должен создать делегата и вызвать на нем BeginInvoke.Например:
var a = new System.Action(() => { /* do work in the background! */ });
a.BeginInvoke(r => a.EndInvoke(r), null);
Тело действия будет выполнено в одном из этих потоков.