Questo perchè in VB.NET viene mantenuto sempre un certo orientamento "a ciò che può servire nella vita reale", perciò il confronto diretto tra due stringhe viene interpretato "alla VB6"...
Java invece è inflessibile in queste cose ( e anche un po' stronzo

)...
Comunque, ovviamente tutto si può fare in VB.NET. Se vuoi un confronto tra references fai così, ad esempio ( s1 e s2 sono 2 stringhe ) :
Codice:
If ReferenceEquals(s1, s2) Then
MsgBox("I Reference Sono Uguali.")
Else
MsgBox("I Reference Non Sono Uguali.")
End If