Gracias por la respuesta Jasp22
Donde tarda más mi código en generar ese TreeView, es en esa función recursiva, porque el DataSet se llena rapidamente (no mas de 1 segundo).
Me gustaría saber como podria llenar el TreeView de otra menera, como lo harias tu tomando en cuenta los registros que son (pueden ser mas).
Espero me puedas dar una idea y si pudieras, un ejemplo.
Muchas gracias