This can be done a little cleaner like this:
Dim bytes As Byte() = {22, 123, 1, 1, 0, 22}
bytes = bytes.Distinct().OrderBy(Function(x) x).ToArray()
Distinct can be called on any IEnumerable, which an array of Byte is. In your case, Distinct() will return an IEnumerable(Of Byte). This has the effect of making the next operation cost a little less since you're not sorting as many elements.
The call to OrderBy() can also be called on any IEnumerable, which the Distinct call just returned. It returns an IOrderedEnumerable(Of Byte), which is a subclass of IEnumerable. What that means is you can treat any IOrderedEnumerable the same as if it was an IEnumerable, which is what you're going to do next.
The last operation is simple. It converts the result of the OrderBy back to an array. That's easily done with the call to ToArray. It creates a new array out of any IEnumerable.
Done. YOu've got your sorted, distinct array.