If you're concatenating a known number of strings it's probably better to just use + as the compiler translates it into a call to string.Concat anyway. So
s = a + " " + b
becomes
s = string.Concat(a, " ", b)
But the first is a lot more readable. Though the usual caveat, StringBuilders are generally preferable when doing this in a loop.
Using Chr(32) over " " will make no difference speed wise as in this case Chr(x) is translated at compile time in VB.Net (don't know if it always is, but on my machine it did) so you're just making it more difficult to read with no benifit. Chr is mainly there for backwards compatibility and is generally best used for defining characters outside of the printable range.
That said, it's probably better to use one of the framework library to build XML unless it's a very small fragment.