I wish I had an excuse to really learn TCL. I've used it here and there but have never had an excuse to dive deep.
Instead it's just a case of using it. In the past I used TCL for "expect" and for the Tk graphical toolkit. I can't say I've written anything major in TCL, but I think that's a common-case. Most people use TCL because it is embedded in applications as a scripting language/DSL.
When people express interest in TCL I usually point them at antirez's simple writeup which gets a lot of the basics shown of in a simple manner:
A classic use case is a debugger like gdb. What else, though?
Its like knowing how to use lisp but not knowing how macros work. Funnily enough this is actually where I am now with lisp.