You do not specifically state whether you are currently employed.
If you are unemployed and you've bills to pay, you may have fewer choices than if you currently have a reasonably secure position.
Assuming you are currently employed, do you really need to leave your position? If there are features of your current position that you would like to change, have you tried working with your manager(s)? There's an old saying, sometimes true: "Better the devil that you know than the devil that you do not know".
So, it may be time for self assessment for you ... perhaps you'll already done that.
Next, is it the job you want to change or would a change in career bring you more happiness? You only live once. You may want to explore other career options.
As for languages, the more you know, the better. I've been programming for 40+ years and still consider myself a beginner in many ways. Our tools evolve constantly. When I started, c# did not exist. Fortunately there are similarites to languages I already knew. However, there are also differences, some subtle, some less subtle.
If you're going to pick a new language to make yourself more employable, you might want to look at what employers want. Another approach is to attempt to get ahead of the pack by adopting a new language early, for example, F# from Microsoft.
Unfortunately, language alone is not enough. Language is actual a very small part of a much bigger picture. For example, to become a web programmer using ASP.NET MVC, depending on your current background, in additon to learning c# (or vb), you may also need to learn HTML, XML, CSS, SQL, et cetera.
As for finding a new job, the reality is that know who often means as much or more than know how.
Whatever direction you take, it appears that you have many challenges ahead of you. I suggest that you embrace ongoing learning to get you to your destination. Good Luck!
Regards,
Gerry (Lowry)