Concat cadenas de & y + en VB.Net

¿Hay alguna diferencia entre los operadores & y + al concatenar cadenas? en caso afirmativo, ¿cuál es la diferencia? Y si no, entonces ¿por qué debajo del código genera una excepción?

Ejemplo:

    Dim s, s1, t As String
    Dim i As Integer

    s1 = "Hello"
    i = 1

    s = s1 & i
    t = s1 + i  //Exception here

    If s = t Then
        MessageBox.Show("Equal...")
    End If

Respuestas a la pregunta(8)

Su respuesta a la pregunta