1. Have a look at the top 10 software skills in job advertisements:
http://www.jobadswatch.co.uk/jobstats/trends/topskillshttp://www.jobadswatch.co.uk/jobstats ( Notes: 1. See below about C, I think that is still in demand because of the number of existing applications that use it, but not for new development; 2. SQL and SQL Server would be in demand because these skills would almost always be asked for as secondary skills in a development job, in any main programming language. On their own they would not be a primary skill for developers.)
2. C#
My recommendation is to learn C#.
C#, and the .NET libraries it is built on, are really the only development system for Microsoft Windows Desktop ( PCs ) and Web Servers, in my view.
Other Languages
Don't learn these, you'd be wasting your time, in my opinion:
C and C++: not used for new development except in niche applications, there are already many skilled developers to fill those jobs. These two languages, especially C++, are more complicated than C#, and you could easily get lost, in fact that is why C++ is not used so much now - it's way too complicated for most work!
C# is a sensible simplification and is much more powerful.
You don't need to learn C or C++ before you learn C#. Just go straight for C#.
Visual Basic.Net (VB.NET): A Microsoft competitor for C#, which has the same level of functionality as C#. However, this language has its roots in the Visual Basic stable of languages, and maybe for historical reasons, is still not preferred by many serious developers. For example, Jeffrey Richter and Jon Skeet are two very good and serious writers, but their books only focus on C#.
It would also be easier for a C# developer to learn Java, because the syntax is similar.
Visual Basic 6 (VB6): This is the original version of Visual Basic, but has now been replaced by Visual Basic.NET, so will be used less and less, and almost certainly not for any new development, just maintenance of existing applications.
Visual Basic for Applications (VBA): This is a language used for developing applications within MS Office ( Excel, Access, Word etc ). It is a fairly lightweight language, but can be powerful when combined with the Office libraries. C# can already be used instead of VBA in many of these applications, and VBA is only available within Office, so unless you are going to focus on Office, VBA is probably not worth it, in my view.
Summary
C# is a respected and powerful language at the core of Microsoft's future strategy.
Development Environments
You can get a free development environment here for C# for Windows:
Microsoft Visual C# 2010 Express
http://www.microsoft.com/express/Windows/ You should learn a database as well: if you're going the C# route, use Microsoft's SQL Server, there is a free version:
http://www.microsoft.com/express/Database/ Important
At the end of the day, you have to make your own decision, and what I recommend based on my experience may not be at all suitable for you. You will need to evaluate all this for yourself to decide what is suitable for you, based on facts your are comfortable with yourself.