I started in hobby micros many years ago, with 8051’s, then PIC. I graduated from that awful PIC architecture to the Atmel AVRs. Still use those.
Of late, using the ARM7. Cost comparable to high end 8 bit micros. But AVR and PIC both use the Harvard architecture - dual memory spaces, RAM and Flash. While allowing an 8 bit to be fast, they are a major PITA for software, since most compilers were intended for the more common architecture, single address space, von Neuman.
So the ARM7 has both flash and RAM in the same address space, Very fast because of the architecture, lots of registers, and flash is accessed with very wide words then used in less wide chunks. This keeps the flash memory cycles per second less than the MIPS, if you will.
Programming the ARM7, for me, has been better than graduating from the PIC to the AVR. After a learning curve, development goes faster on the ARM7 for many reasons. Also, with ARM, there are 10+ vendors of ARM chips which are all quite similar. If one crumps, it’s not so painful to change vendors. Or reuse your ARM knowledge on each new project buit with different ARM chip family members, e.g., LPC2103 at the low end, then 2106 and on up. Into ARM9 and beyond you are going into memory managed CPUs for Linux.
WIth a JTAG, debugging is just like it is on a PC - breakpoints anywhere, single step, etc. I chose IAR’s compiler and J-Link JTAG. IAR has a generous free version for students hobby users. There is the free GCC WinARM which like WinAVR can be good with the right IDE. But no match for professional compilers such as IAR or Keil or less so, ImageCraft.
The latest greatest is the ARM Cortex - lower power, etc. A bit more expensive now (early in products). ARM7 chips are $4 and up, whereas Cortex are like $12 and up (1ea).
Lots of ARM board/module vendors on the web and several here at SFE.