This is an old revision of the document!
(not finished, I got distracted by TV then went to bed)
Arduino
Generally accepted as the best choice for those with no previous experience of microcontrollers. Plenty of help and examples available. Many development boards available to suit.
The most commonly version is based on the AVR ATMega328 (see below). The arduino platform consists of a bootloader on the IC so that no special programmer is needed, and easy to use software and a simplified programming interface to control the hardware on the arduino. The advantage it gives to beginners is that it does not require the user to fully understand the underlying hardware, rather provides easy access to controlling pins, using the serial interface, timers and so on.
Program in c/c++
pros: best first step for beginners, doesnt need deep understanding of the hardware, plenty of support available
cons: annoying to debug, not as many features as others, arduino can 'get in the way', range of different ICs is limited
AVR
pro: comes in a nice set of packages, software unlimited and for linux, nice step from arduino cons: annoying to debug, not as many features as others, more expensive than others Program in c/c++
PIC
similar to AVR, blaa….
MSP430
ARM
PICAXE
While it might seem like a very simple and easy platform, once you try to do anything reasonably complex youll be crying in the corner
Parallax Propeller
eww. Just use a raspberry pi
Note: I am aware that you can program the above in ASM rather than c, but if you intend to do this, you're not really the target audience of this guide