casper,
Just to add to the confusion :-) I would suggest a form follows function approach. It is not considered usual these days, but, if you are in learning mode and don't have commercial requirements, then it can be a lot of fun.
For example, I am doing much as you are (EE, turned SE, turned architect, now getting back into the EE side of things non-professionally). I have a PICkit 2 Dev Ket (it comes with a board), a stack of 8-bit PICs that I play with. I like to use CAL with them. It works.
I also have an Cortex-M3 board (the Olimex LPC-2103) that can use either the GNU toolchain or, my preference, Frank Sergant's Riscy Pygness Forth system. And I run both against Win or Linux as needed.
Most of what I do can be done with an 8-bit micro, so I use the PICs. Otherwise, it is the ARM. And given that it is just for me, I can avoid the curse that is C (ducks ;-) )
.. mark.