I have been working with the STM32F1xx development boards for some time now, I even wrote the flash program (
stm32flash) for the thing, which I no longer maintain for reasons shown down below.
For price, the best I have found is Futurlec, they have two offerings:
They have the STM32 Stamp module also:
http://www.futurlec.com/ET-STM32_Stamp.shtml ($24.90 USD)
This one contains the STM32F103RET6 which has 512K and pretty much every peripheral you could want.
http://www.futurlec.com/STM32_Development_Board.shtml ($39.90 USD)
This is quite a nice board as it has a JTAG header among other peripherals for testing and development.
The only thing to note here is the chip is a STM32F103RBT6 which is only the 128K version, and missing a few peripherals, a shame really. I bought some RET6 chips from alibaba and swapped it over as I develop on this board but deploy onto the stamps.
As for development, I learnt the hard way that using the serial interface/uploader etc. is a major pain in the ass as there is no way to debug the running code other then provide some kind of visual feedback. You will save yourself a world of pain if you get yourself a USB JTAG interface and use OpenOCD which supports the STM32 range of devices. This allows you to debug your code on the device, set breakpoints, step the code, inspect registers/ram, etc.
These are wonderful devices IMO, fairly cheap, and very powerful for the price. There is also a nice open support library,
libstm32 which is FAR superior to the ST library. It is a bit lacking in documentation, but it is very nice to work with.
It is also possible to run FreeRTOS on these devices making them very useful.