Bueno, no se trata del Repeat (bucle) se trata de lo que hagas dentro.
Imagina que tu aplicación debe grabar a disco o copiar un fichero. Si este es grande, tardará unos segundos. Si tu programa puede continuar sin necesidad de que esa operación acabe, puedes pasarla a un Thread aparte (es una única operación). La clave está en que el código que sigues ejecutando no dependa de esa operación que vas a realizar en el Trhead.
Imagina que lanzas un listado que tarda en generarse bastante tiempo. Puedes lanzarlo e intentar ejecutar eso en un thread independiente. De esa forma tu programa no tendrá que esperar a que se genere.
Como ves no tienen porqué ser muchas operaciones. Lo que realmente importa es que el código que coloques en el Thread sea de alguna forma independiente del resto del programa, para que tu programa siga ejecutándose, sin necesidad a esperar que ese código acabe.
No se si acabo de explicarme bien...