La verdad si, si es algo grande la diferencia, desde que se pasa a .NET hasta los controles y la sintaxis cambiada.
Por ejemplo, en VB 6, se pone Caption, en VB 2010, te poner .Text, pero eso si, se te facilitará mucho más porque ya vienen varios métodos, procedimientos y demás.
Todas las llamadas a subrutinas requerirán el empleo de paréntesis.
VB:
MsgBox "Hola mundo"
VB .NET:
MsgBox("Hola mundo")
ByVal o ByRef son obligatorias
En Visual Basic .NET, tendrás que calificar todos los parámetros de subrutinas utilizando ByVal o ByRef.
VB:
Sub ActualizarInfoCliente(NombreCliente As String)
End Sub
VB .NET:
Sub ActualizarInfoCliente(ByRef NombreCliente As String)
End Sub
Los parámetros de sucesos son diferentes en Visual Basic 6 y en Visual Basic .NET. En Visual Basic 6, la subrutina de suceso contiene el nombre y el tipo de cada parámetro. En Visual Basic .NET los parámetros están asociados en un objeto EventArgs y se pasan como una referencia a dicho objeto. Además, la subrutina de suceso asociada con un suceso de Visual Basic .NET incluye una referencia al objeto que puso en marcha el suceso.
Por ejemplo en un formulario que contenga un control ListBox con el código asociado para mostrar cuál es el elemento que se encuentra seleccionado.
VB:
Private Sub List1_ItemCheck(Item As Integer)
MsgBox "Ha seleccionado el elemento: " & Item
End Sub
VB .NET:
Private Sub CheckedListBox_ItemCheck(ByVal sender As Object,_
ByVal e As System.Windows.Forms.ItemCheckEventArgs)_
Handles CheckedListBox1.ItemCheck
MsgBox ("Ha seleccionado el elemento: " & e.Index)
End Sub
No podrás declarar una matriz en Visual Basic .NET para que el primer elemento de la misma tenga un índice negativo. Este requisito significa también que no podrás utilizar la instrucción Option Base 1. De hecho, no podrás especificar una dimensión inferior en una declaración de una matriz, ya que siembre deberá ser cero.
VB:
Dim MyIntArray(-10 To 10) As Integer '21 elementos
Dim MyStringArray(1 To 100) As String '100 elementos
Option Base 1
Dim MyOptionBaseArray(5) As Long '5 elementos (1 - 5)
VB.NET
Dim MyIntArray(20) As Integer '21 elementos (0 - 20)
Dim MyStringArray(99) As String '100 elementos (0 - 99)
'Option Base 1 'No admitido en VB .NET
Dim MyOptionBaseArray(4) As Long '5 elementos (0 - 4)
En Visual Basic .NET se ha eliminado el tipo de datos Variant. El motivo principal es que .NET Framework no soporta de forma nativa el tipo Variant ni ninguna otra cosa que se le parezca. La aproximación más parecida que ofrece .NET Framework es el tipo Object. El tipoObject funciona de forma similar al tipo Variant porque el tipo Object es el tipo base de todos los demás tipos, tales como Integer yString. Al igual que podías hacer con un elemento Variant podrás asignar cualquier tipo a un Object. Sin embargo, en Visual Basic .NET si deseas convertir una variable del tipo Variant (Object en .NET) en un tipo Integer o String, tendrás que utilizar una función de conversión de tipo, tal como CInt o CString.
VB:
Dim v As Variant
Dim es As String
v = "La variable Variant contiene una cadena"
s = v
VB .NET:
Dim v As Object
Dim s As String
v = "La variable Variant contiene una cadena"
s = CStr(v)
Entre otras cosas mas, te recomiendo .NET 2010 ya que te facilita muchas cosas con menos sintaxis.