A microcontroller is a device which has an ALU, GPIO and memory. (ALU- Arithmetic and Logical Unit, GPIO- General purpose input output i.e. basically ports) An embedded system is basically based around a processor which may be micro-controller or microprocessor. Embedded systems perform a particular task.
Depending on the task and market the best possible microcontroller is chosen. Now this choice depends on the designer whether he wants more ports or more memory or more communication capability.
There are various controllers available out there like msp430, arduino, 8051, PIC, AVR, Atmel, Atmega etc.. In order for you to learn the controller there are few things that you need to understand. The architecture, register concept, memory concept, instructions and opcodes, assembly language and others.
Then one can start with embedded c coding. Embedded systems are becoming an inherent part of every modern electronic equipment. Ranging from your washing machines to your mobiles all have some or the other kind of microcontroller.
An interesting application that I came across. There was this guy he made a project in which the scarecrow was fitted with motors and some sensors. He wrote the code in such a way that the scare crow would show movement whenever it detected a bird. This is one of the humongous number of applications that one can make using microcontrollers. So if you like making electronic stuff microcontrollers are definitely worth exploring.