I do not have much experience with STM32. I've mainly been using LPC's. You will find the world of Cortex M0, M3, and M4's is much more fractured than your PIC experience. There are many manufacturers, many manufacturer supported coding environments. If you want easy multi chip support, you can pay for it. Keil and IAR are commercial products and I would only stick with them if you aren't going over the limitation or don't mind spending multi thousands on a license. Otherwise there are some cheaper IDE's based on GCC for ARM, like Atolic, and Rowley Crossworks. I am currently using Rowley Crossworks with a hobby license, which has no code limitation, just no commercial use. I have heard about Coocox CooIDE, but never tried it.
I was reading someone on another forum tried out building Eclipse with GCC and found it to be pretty good lately. I tried it many years ago and found putting it together way too complicated and it was a big mess. I might try it again myself.