یک راه هم این هست که یک char array از A-Z و 0-9 بسازیم
و اون رو random مرتب کنیم
و 6 تاش رو برداریم:

Private rx As Random = New Random()

Function CreateNewRecoveryCode() As String
Dim digits = Enumerable.Range(AscW("0"c), 10).Select(Function(x) ChrW(x))
Dim alphas = Enumerable.Range(AscW("A"c), 26).Select(Function(x) ChrW(x))

Return digits.Concat(alphas).OrderBy(Function(x) rx.Next).Take(6).ToArray
End Function


من اینجا برای راحتی با enumerable.range این لیست A-Z و 0-9 رو ساختم.