I work at a shop where most everyone uses VB 6.0, and is quite comfortable with the language. We are considering migrating soon to either C# or VB.NET. It seems obvious to me that the correct choice would be VB.NET, however, a fair percentage of people feel that C# is the way to go. The primary reason they cite is that old habits (bad non-object-oriented habits) die hard. And while VB.NET does offer a wealth of new OO functionality (comparable to C#), it is all to easy for an experienced VB 6 programmer to essentially ignore this and continue to code in a manner that they are accustomed to. If programmers are forced to use C#, they will be forced to learn superior techniques. Of course, my thought is that productivity could be sacrificed while people learn a new language, that for all intents and purposes, is equivilant to a language they already know ("It [VB.NET] has almost exactly the same capabilities as C#" - Professional VB.NET 2nd Edition Wrox press). I am very interested in your opinions. If you take time to respond, please add a sentence about your programming background. Thanks.