For better or worse, I imagine many home-grown RISC OS programmers followed something like the following sequence:
1. Learnt BASIC
2. Learnt WIMP programming in BASIC
3. Learnt portable-ish C
4. Programmed C in a BASIC-like way with a library like OSLib, DeskLib or (back in the day) RISC_OSLib
5. Programmed C with a higher-level toolkit like the Toolbox (or DeskLib to some extent)
(and if you go down the lower-level route, assembler and writing modules will fit in somewhere, but aren't of concern for someone doing WIMP stuff)
Now of course you can do these differently, or in a different order. But I think the biggest step is 2. Once you have some idea of how to program, learning how to interact with the WIMP is the main thing.
Having done that, switching language (especially if you've even seen other computer languages) isn't so hard... just takes a little while to get your head around new features like structures, a while until you stop making stupid typos, a while to iron out your silly bugs, and a while to develop a good coding style (peer review helps a lot with all this).
You can, of course, short-circuit this by going straight to the Toolbox. But sooner or later you'll need to interact with the WIMP directly. So it's worth knowing how the WIMP works even if you rely on something else to do the legwork most of the time. This is more the case than, say, Unix where there's not so much of a need to learn Xlib because libraries like GTK cover it more. But by all means start with the Toolbox and then fill in the detailed WIMP stuff later.
I think I would actually suggest BASIC is a better environment to learn WIMP programming than C as it's more dense. Especially with a library so you don't have to do all the q%!(q%?3) stuff. Then you can switch to C which will have a similar library, and better structure support for manipulating WIMP data.