Yes, an Arduino is good for a very basic introduction. There is a lot of hate on them which has some points in that people make big projects with Arduino and think they understand more than they do.
Do you know any C/C++ already?
I would get this book with the associated board: https://www.amazon.com/Beginning-STM32-Developing-FreeRTOS-libopencm3/dp/1484236238/ref=sr_1_3?dchild=1&keywords=mastering+stm32&qid=1608692716&sr=8-3
I am considering purchasing this book: https://www.amazon.co.uk/Beginning-STM32-Developing-FreeRTOS-libopencm3/dp/1484236238 .
I would love to learn all about the blue pill, including running FreeRTOS and using it as an interface for serial communications. I'm also hoping this will help me learn how to find a genuine blue pill!!
What do others think of this book? Any others to consider?
I'm in a similar boat, VSCode + PlatformIO seems to be the best option that I've found.
Also this book is a good place to start, although they're focusing on the Blue Pill instead of a nucleo board - https://www.amazon.com/Beginning-STM32-Developing-FreeRTOS-libopencm3/dp/1484236238
have you considered the stm32 family? it's far more popular with wide applicability. your effort is stretched further...
also i'd imagine it's easier to find good resources to learn it. i used the warren gay's book [https://www.amazon.com/Beginning-STM32-Developing-FreeRTOS-libopencm3/dp/1484236238 ] which used parts easy to source.
​
now to be reaching into other micros like the above, i plan on picking on rust programming. it's ecosystem has a generalised framework for all architectures! again more bang for your effort.
"The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors"
i thought that is more of a reference book, and you need something else easier for the beginner.
https://www.amazon.com/Beginning-STM32-Developing-FreeRTOS-libopencm3/dp/1484236238
https://leanpub.com/mastering-stm32
​
these are tutorial style books, and each use different frameworks, you could choose!
Sounds like you might like:
https://www.amazon.co.uk/Beginning-STM32-Developing-FreeRTOS-libopencm3/dp/1484236238
But it does expect you are comfortable with the GNU/Linux ways of gcc and Makefiles. Though I recommend you get so anyway.
https://www.amazon.com/Beginning-STM32-Developing-FreeRTOS-libopencm3/dp/1484236238
Programming microcontrollers is kind of a big topic, I'd go with books over tutorials.