I have the spent the last week or so transferring quite a few domains for a client of mine, and boy do they make it difficult!  Here are a few notes on the process:

- You must first unlock the domain at the current registrar.

- You must then request an EPP code in order to be able to transfer it.  This will be sent to the admin contact on the domain, so be sure it’s an email you have access to.

- You then must head to the new registrar, let them know about the domain you’re transferring and provide an EPP code.  In my case, with Hostmonster, I then had to wait for an authorization code to be sent from Hostmonster to the admin contact so that I could complete the process.

- You then have to enter the authorization code for each domain at the new registrar and, typically, pay to renew the domain.

- Then,  it’s back to the old registrar to approve the transfer.

Could they make it more difficult?  By the way, here is another article I found on approving the transfers at Go Daddy, because, predictably, they don’t make that very easy:

http://www.lodesys.com/blog/2009/godaddy.php

Fun times!