what kind of microcontrollers will you use?
most of them has the same philosophy, ports, interrupts, serial comm, etc, what it is important first is to know the capabilities of the micro you will work with, then learn the instrucction set, and have the datasheet at hand of the micro when you are programming.
Go to the page, of the manufacturer, and look for forum.
probably here you can find a lot of info, and the simpliest uC is 16X84
Nigel has a site where you can find out information about microcontrollers, too.
I have 4 days programming pics, this my first program. I am using the 16F870, MPLAB v6.xx as IDE from microchip.
c u