Size isn't always that important
You can get better speed results using a massive, pre-computed look up table in some application than a much smaller bit of code that computes the values dynamically. It's very much a 'horses for courses' kind of argument.
My view?
Visual basic easy to learn and develop applications quickly - latest .NET version much better than older versions. However you are limited to Microsoft's language - though it does propagate to other MS products e.g. Excel.
Delphi is probably best thought of as a visual version of Pascal - free download from
http://www.borland.com/products/downloads/download_delphi.html. Better for 'real' work and tends to be faster. You might want to have a search for DeDe too
Also look at Kylix.
C/C++ - current language of choice as I've developed lots of useful classes over the years which make development easier for me. Can be incredible infuruating though - Microsoft development environment not too bad. Because of the wealth of people programming in it there are usually routines available to perform any task you need (though most require a bit of tweaking).
Good place to look at for examples is over at
www.codeguru.com