I started with VB myself, and when I decided to try java I found it very different, not only because of it's C-style syntax, but it really forces you to be object oriented, something you don't really see in VB (at least VB 6 and under ). Creating a GUI in java is really different, so I'd get a book or two on that if you intend on writing graphical applications rather than console-based ones. However, it's platform independance and power make it a much better language to use than VB, IMHO.