People use assembly when they want their program to be compact and effecient. But when lot of math related stuff are to be done then C is chosen since it is very difficult to deal with floating point numbers in assembly. However this is not a rule as such. If time is very limited for completion of project, C is used.
Also there are many other languages like BASIC, JAVA for uC etc. But assembly and C are most popular ones.
If you are refering to commercial robots as used in industry then the most common language is probably CNC (computer numeric control), this is also used for controlling mass production lathes, drills, milling machines, paint sprayers etc. etc. (could these also be robots? they are following a program...)
Every manufacturer will have their own way of implementing this though, depending on required 'features'.
I believe BASIC is the easiest programming language to learn and use, as the name implies ( Beginners All-purpose Symbolic Instruction Code) its meant as an introduction to computer programming. But if you are planning to pursue programming as part of a curreer i'd suggest to learn C or one of its derivitives.
I'm no expert on this, but I just picked up an interesting book that aims to simplify the process of robotic programming. It takes an object-oriented approach to program development and uses a token-based interpreter running on various PIC micros. Much like the old byte-code idea, it has its nice points. You can choose Basic, C or Java as the front-end language, whichever you are most comfortable with. It's definitely worth a look if you're considering the Basic "Stamp". This thread probably belongs under the "Robotics Chat" forum, which I'll admit I haven't looked through yet.