The first thing to do is realise that Unix is traditionally a command line driven operating system. As such the command line is extremely powerful.
When I first started using Unix we had no windowing system, just a command interface.
The best way to learn is to pretend that you dont have a windowing system and do as much as possible from the command line... Creating, deleting, moving, editing files and directories would be a good place to start.
Learn where everything is on your system. For example, where are user accounts created? Where are the applications stored? Explore the OS and learn your way around.
The man command is your best friend - On all Unix systems you can generally do type "man <command>" - for example man ls - to get instructions on a command... the man pages show all the information you need for each command including the hundreds of options Unix commands take (for example, look at man ls and see how many options you can pass to it). If you are not sure what command to type for a task use the -k flag which will search for the given keyword.
After you have the basics I would recommend looking at shell scripting which is where real control of a Unix OS comes from - by default you are using bash on Mac OS X so do man bash and look at some of the syntax examples in the man pages - as a programmer it will all be familiar - I would think the only thing you need to learn here is the syntax and how IO works.
Next up is permissions. Learn how to change permissions and ownership on files. Learn the binary notation for setting permissions - e.g. chmod 700 etc.
Once you have the Unix commands down and can get simple shell scripts up and running the next stage is to look at your environment. Learn about the contents of .profile. .bash_profile, .bashrc etc. You can get answers about these on the web. By being able to configure these files you can customise your command line environment - for example I set JAVA_HOME, PATH and CLASSPATH in my profile files - I also alias the command 'ls -l' to ll so I can just type ll to get a long file lising.
Finally - and the most difficult - learn vi. vi is the command line editor for Unix. It is amazingly powerful and enables very fast editing of files - it has fantastic regex support - it does take a leap of faith because editing files is very strange, for example, you press i before inserting text - 0 to get the start of the page and cursor movements are controlled with hjkl and not the cursor pad. Once you have mastered vi then you will not use anything else to edit text files - trust me :-)
WARNING: The Unix command line interface is VERY powerful - there are no recycle bins / trash cans / undo's etc on Unix so be very careful using commands like rm (especially with the -r flag and even more if you append a / to it
. Your default account on Mac OS X will stop you killing much outside of your own environment but as you know the sudo command lets you do anything you like - always check your current location using the pwd command before executing any move or delete commands.
With any luck you will have the same experience as I did when I started on Solaris. Once you use Unix from the command line and realise how perful it is it is very difficult to go back to using a point-and-click restrictive environment like WIndows.
Happy tapping.