Hi
there are many types of microcontroller , but the famous types are
PIC for microchip and AVR for ATEML
So , if you are AVR my advice to you buying STK500 it's very good
programmer and it use with AVR studio program.
if you are using PIC go to PSTART by leaper it's useful for all type of
PIC but this type is expensive
or you can buy PIC KIT 2 but it's not be useful for all types of PIC.
BTW, there is a device but I do not remember it name by it you can
programming all type of microcontroller, it's price more than 500$
best wishes
Abdulla