On thing to take into consideration is that STM32F4 like most 32-bit MCUs won't run at 5V, it has an operating voltage of 1.7 to 3.6 V.
Most Atmel 8-bit AVRs on the other can run at 5 V too, like most other 8-bit MCUs.
This makes it easier to interface to 5V peripherals.
Standard character displays for example can typically only run at 5 V logic levels, so this makes it simpler to intrface as you don't need any level converters.
Even though you buy an Arduino mega 2560 board, you don't actually have to use Arduino at all, but can program it in assembly and/or C, which are the two programming languages used by almost all professional MCU programmers.
Atmel Studio 6 is a complete and free toolchain, where you can program Atmel AVRs (and ARMs) in both assembly and C:
http://www.atmel.com/microsite/atmel_studio6/Once you have learned to program an 8-bit MCU in C, it's not a big step to upgrade to a 32-bit MCU later, as you can still program it in C.
If you go with AVR, there's a large community dedicated to this MCU, where you can find a lot of help and ideas:
http://www.avrfreaks.net