Javascript is the best first language to learn. It's c based, loosely typed and is incredibly flexible. You can learn the basics of language structure and can get quick results from it. On top of that, to really use it well, you have to learn about prototypical inheritance, how that differs from classical languages and how you can simulate classical inheritance with it. It's a great way to learn OO. Once you've understood all that, moving on to C# is easy. It' is just a classical version of javascript, the syntax is almost identical(if a little more verbal in places).
This is the route I'm been taking, and it's pretty rewarding. Sure, you can learn the simple stuff in c++ before moving onto OO later, but you can't get any real results from it, just snippets of useless code. With javascript, you can write fairly effective Firefox add-ons with simple code, with c# you can make useful office addons and form apps, again with simple code. I remember reading through a C++ book about 5 years ago (principles and practice) and it was enough to put me off programming altogether.
Edited by deleted (Thu 10-Dec-09 14:25:58)