“When all a programmer has is a hammer, all screws appear to be stupid.”
This is a great quote that summarizes my opinion on which programming language is the best. The language you use is just a tool to get the job done. If all you really know is one tool, it will force you to see every problem the same way.
I have my favorite languages; Python, Ruby, C#, but that has not stopped me from exploring other languages to see how they work and what they have to offer. I’ve messed around with or used the following ‘other’ languages; Perl, Tcl, C, Java, PHP, ASP, VB and BASIC. I’ve learned something about programming from each one that I used, either in a project at work or on my own. Will I be using a different language five years from now? More than likely, yes. Does it bother me having to learn a whole new language every five or six years? Sometimes, but that’s the nature of the business and it’s why I love this profession. Change is a constant that a good programmer will learn to appreciate.
I’ve said this before, but if you are a Microsoft only developer, the best thing you can do is get Linux and learn a scripting language. If you are an Open Source Only developer, get a Windows box and learn Visual Studio. You will be presently surprised what you will discover, and you might see where you can use what you learned back in your comfort zone.
That’s just my two cents worth.