I too learned GIS through the various free resources already listed. What really helped me learn it was to create mini GIS challenges to figure out. That way I wasn't just following along in a tutorial, but actively solving the problem or discovering how those tutorial steps can be applied to other situations.
As I worked through these challenges, I documented everything. I wrote my own "tutorials" as if I was writing it to teach someone else how to do it. I detailed every step I took, explained the why behind my decisions, and even recorded some of the pitfalls I fell into along the way. The act of writing it all out in detail helped cement it in my brain, but it also created additional resources I could reference in the future when I needed a refresher on a certain process.
What a creative (and effective) approach, @JenniferAcunto. Active learning is learning that sticks.