Any good ways to learn LUA?

I’m thinking of doing LUA Gmod gamemode scripting but I don’t know how to do it, so do you guys have any good ways to learn?

Read everything except the C interface part.
Then read the base gamemode code and sandbox code.

The C API is the most interesting part.