Microcontrollers and FPGA's are hobbies for me... in the sense that I don't deal with them professionally. However I have found that gaining fundamental understanding of digital circuits is crucial to understanding computers at higher levels... and they're just damn fun.
So, while I provide some info here about my dabblings, I give no warranty about correctness or up-to-dateness of the information!!
I have played around with the Microchip line of 8-bit and 16-bit lines of uC's, and found them very interesting. I have also been very interested with where the ARM architectures are headed, since they can provide such an impressive amount of power... However, I have to say, that the "old" uC's really can't be beat when you need predictable timing. I have found that the ARM chips have rather high GPIO latencies, and when runing operating systems (ie. Linux or FreeRTOS) it makes latencies even worse and less deterministic.
Well, I don't know if it's fair to put this on a uC page... the beagle board is a fully fledged computer, and essentially the same chip is used in the Palm Pre, and other handheld devices.
Here is some info about working with the beagle board, and open source tools
Please note that Texas Instruments has aquired Luminary Micro since I first wrote this (in March 2009), so I don't know the current status of anything about this... however, it worked (and made sense) when I was still playing around with it.
Here is an old writeup I did regarding getting a LM3S1968 Eval Kit up and running under Linux with all open source tools: (Also, as always, new versions of software have come out, so be aware!)