Beginning with programming microcontrollers
Well that depends on what family of microcontroller you want to work. You definitely need development board/ starter kits to begin microcontroller programming. If you want to go for PIC MCUs, Explorer 16 board are best or you can go for other development boards for PIC.

If you want to start with AVR MCUs, then purchase an AVR development board.

Arduino Uno is also a good starter kit to start your programming. There are many tutorials available online.

If you don't want to purchase any starter kit and want to simulate your design in Proteus Simulator, then this blog can you help you.!

You probably need books to understand microcontroller's &amp; their programming. For AVR read this &amp; for PIC go for this and for any other MCU