Welding Meshes

In the component when you add radius these methods are performed:

        mesh.HealNakedEdges(radius);
        mesh.Vertices.CombineIdentical(true, true);
        mesh.Vertices.CullUnused();
        mesh.Weld(3.14159265358979);
        mesh.FaceNormals.ComputeFaceNormals();
        mesh.Normals.ComputeNormals();

        if (mesh.SolidOrientation() == -1)
            mesh.Flip(true, true, true);

        mesh.Compact();

If there is faster method let me know, I can change this.
You can also check method by method which one is slowing down the welding.

Before I used rtree search for welding, but as Michael mention closest distance has its own issues even if it is fast it may result in invalid meshes. Heal naked edges use edge graph to merge adjacent vertices.
This was the topic in this forum (the last comment of @menno I believe it is what heal naked edges is):

Maybe @dale can give a faster suggestion for welding.