Here's a way using arrays, in case you'd prefer to avoid regular expressions.
Given this starting string:
Dim str As String = "This is a test string"
You can do this:
Dim arr As String() = str.Split({" "c}, StringSplitOptions.RemoveEmptyEntries)
Dim compressedSpaces As String = String.Join(" ", arr)
You can also combine it onto one line:
Dim newString As String = String.Join(" ", str.Split({" "c},
StringSplitOptions.RemoveEmptyEntries))