Nice question!
Here are my thoughts:
1. Give yourself challenging tasks, you can find lots of these in "How do I.." forum.
2. Study other people's code, but keep in mind that it's not always good or correct (especially in "How do I.." forum ). You can usually recognize a good code if it's well formatted, commented, functions/loops/groups are being used, variables and objects have meaningful names etc.
3. Explore expressions - every object in C2 has dozens of useful expressions and many people have no idea about them.
4. Read this post - Best practices in C2