C: archaic and clumsy, but still reasonably widely used. Totally different syntax to C++, and you should basically never mix the two together in the same program even though they follow on from one another.
Agreed that C is archaic and too clumsy for most purposes nowadays, but often when you're doing very low level stuff it's still your only choice (and that covers most of its uses nowadays.) A lot of applications that need customised low level hardware functionality use C as a base for the low level stuff and then write the rest in an application like C++ or Java - there's nothing wrong with this, it's actually quite a good practice since writing the whole lot in C would be horrible!
C++: constantly loaded with new features and libraries, but gets frighteningly complicated quite quickly. The ultimate in industry standard languages, though, so it's well worth your while at least trying to learn bits of it. Programming GUI apps can be a total nightmare, especially under Windows.
Pretty much agree with all of that. There's not so many new applications being written with it nowadays and it's really not the nicest of languages by today's standards, but if you want to work in programming it's an essential one to learn. (Note that when I say there's not so many new applications being written with it, I'm not saying by any stretch of the imagination that it's obsolete as a lot of people seem to wrongly think!)
Java: Not too bad, but slow at runtime and forces you to do things in a way you wouldn't necessarily want to to it. Taught at most British Universities if you do a CompSci degree.
Right, these two complaints are ones that are heard all the time, and they're mostly myths left over from eons ago. So to address the first one - yes, Java used to be slow. Used to be - ages ago. You're talking when the private protected modifier was still in full force and goto was a reserved word that actually did something (anyone else remember those times?!) They've optimised it a heck of a lot since then, and it's actually now faster than C++ and similar languages in a LOT of applications. Don't believe me? Take a look
here - and that's from a fair few years ago, a modern one run more recently (that I can't find quickly) showed far better results for Java. No, it's not going to be as quick as running the same thing in assembler, but for a general purpose language these days it's actually pretty quick - at least a lot quicker than people realise!
The second complaint - that Java forces you to do things differently, is in my mind a good thing. Usually people that complain about this have come from a VB.NET background and have picked up all sorts of bad habits (this is one reason why I don't like VB, it lets you get away with all sorts of things it shouldn't and if you come to program in a more professional language, you'll inevitably moan that it's "harder" and "not like you're used to.") Yes, Java prevents a lot of things that languages like C++ might allow (operator overloading, multiple inheritence, goto, etc.) but in 99% of applications these things are BAD and you shouldn't be using them! Learn how to use Java properly and you suddenly find that far from being bodged and restrictive, it keeps you in check a lot more than other languages do and enforces good programming practices that you'll thank it for later
The only way Java wouldn't work nicely is if the program you're creating doesn't fit into an object oriented design very nicely, in which case an object oriented language in general is just a poor design choice. But this is far more commonly down to the fact that someone can't work out how to fit a program into an object oriented fashion nicely rather than the program actually CAN'T fit into an OO fashion nicely.
C#/J#: M$ ripoffs of Java, they're so similar that if you're good with one you're pretty much good with all three.
Agreed - though if you know Java it's worth learning C# and doing something in it, something else to put on the CV in terms of experience and it's pretty widely used. Especially if you're doing windows only stuff it can be a good choice, because of it's nature it'll integrate far more nicely with the windows platform than Java will. That said, I usually value Java's cross platform nature rather than C#'s good integration with windows - there's a time and a place for both though.
Don't bother with J#, that was a miserable failure!
In answer to the original poll - VB is probably the easiest up there, but Java is probably the best to learn first because unless you're being taught it really badly it gets you into good habits rather than bad!