Admittedly there are a lot of things to learn. I have been at this microcontroller hobby for 50 years (Arduino and C++ for 10 years) and learn stuff every day. Keeps one interested.
The stepper libraries can help a lot.
If you still want to write your own stepper code (and that is perfectly fine), Robin2's simple stepper code tutorial is a starting point. He shows how to do stepping without blocking, too.