Before you start

C# versus VB.NET

With Mono being platform independent it does not matter wether you are coding in C# or in VB.NET. In fact VB was very C#-ified, a thing that MS definatly did NOT get right. That means VB.NET is almost the same, just some differences in the Syntax. So why would you want to program in VB.NET? Language independence does mean, that you can use C# classes in VB.NET and vice-versa. Not, that both languages should be very similiar.