Hola, Eliot:
A continuación tienes unas pequeñas líneas de código con las equivalencias en la biblioteca del .NET Framework a las funciones que mencionaste.
String miCadena = "Esta es mi cadena!!!";
String equivMid = miCadena.Substring(11,6);
int equivLen = miCadena.Length;
Random equivRandomize = new Random();
double equivRnd = equivRandomize.NextDouble();
int equivInt = Convert.ToInt32(equivRnd);
En realidad VB.NET incorpora muchas de las funciones nativas del lenguaje VB6, pero he visto en diferentes libros, artículos y blogs que es recomendable utilizar las equivalencias del .NET Framework en vez de las funciones de VB.
Si necesitas más equivalencias deberías revisar en la documentación del .NET Framework las tareas para las que están destinadas las funciones (o constantes) de VB. Por ejemplo, en el caso de las funciones Mid y Len, ambas están relacionadas a la manipulación de cadenas, por lo cual la documentación de la Clase String es el lugar para empezar la búsqueda.
En cuanto mencioné constantes, por ponerte un ejemplo en vez de utilizar la constante vbCrLf, utilizarías la función newLine() de la clase Environment. Si quisieras agregarle un salto de línea a la variable miCadena definida en el primer bloque de código, lo harías de la siguiente manera:
miCadena += Environment.NewLine();
Si necesitas más equivalencias y no las encuentras en la documentación, sigue posteando.
Hasta luego!!!
Я!©ђ!Є ©Я∆ZΨ