Well, the main differences are marketing*.
Basically microcontroller can do everything a single chip computer can do, but microcontrollers usually have lower performance than system on a chip computers. It is normal for SoCs to have complicated operating system such as VxWorks, GNU/Linux or maybe even windows. On the other hand, microcontrollers often run very simple operating systems and it's not uncommon for them to just run a single program, without OS. So basically, yes, they are same concept but SoCs are much more expensive and have higher capabilities than microcontrollers. To put it simply, microcontrollers are usually as capable as 20 to 25 year old home computers while SoC are as capable as 10 to 15 year old desktop computers.
Embedded systems are computers installed in a device and are intended to just run the device. They may or may not be microcontroller based or SoC based. Some embedded systems even use standard PC components in a (sometimes) special enclosure. So their main point is that they are considered a part of a more complicated device, like a oscilloscope, x-ray computed tomography scanners, magnetic resonance imaging scanners and so on.
*Why marketing? Well powerful microcontrollers may be as powerful as low performance SoCs and basically anything may be called embedded system as long as it's a part of the device. If you buy a table and a computer, you could say that the computer is table's embedded system.
http://www.netrino.com/Embedded-Systems/Glossary-M – Aki – 2011-06-18T15:26:20.807