Every time you start with new microcontroller, you have to deal with new ways of programming them. You may need to purchase and learn new tools and so on. But once you’ve done this process with any microcontroller, learning new is easy. So if you are in to STM32 microcontrollers Shawon have written pretty god guide on programming them.
Since ARM Cortex micrcontrollers are flexible devices in terms of developing, debugging and flashing, you have several options of getting your code up and running. Like most manufacturers do, ST devices can be programmed and debugged with special ST-link adapter/debugger which works in JTAG or in SWD mode. Most development boards like discovery already have ST-link debugger integrated so the only thing is needed to run software and load your code. Other covered option is using built in bootloader which can be accessed through serial interface. ST have special software Flash Loader Demonstrator for programming in this mode. When programing with bootloader, special pins have to be pulled up or low in order to access it. This resource is great to start with and then you can dig deeper during development process.