I wanted to migrate my domain, mail, and website hosting to GoDaddy. The first guy with whom I spoke said clearly that this would all happen and that the total cost for two years would be $255.75. He said that there is a 30-day cancellation policy. I paid. The migration person had lots of trouble and finally said that my site files had been copied - I had to give him access to my account at my current host - and that I would get a link to the copied files. I got the link, and the files were fine. I was told that I would get a call from GoDaddy to go to the next step. After a few days, I sent an email asking why I'd not had the call. I got a response saying that they had tried to reach me. It turned out that they probably had but left no message. I don't call numbers I don't recognize.
When I called this morning, after some difficulty I spoke with someone who said that I had to modify the DNS at my current host myself, and she sent me a table with the entries I should make. When I got into my current server's DNS-management site, the table of addresses did not correspond to the table GoDaddy sent me. I called GoDaddy again. I then spoke with someone to whom I had to (again) explain the situation. He was not concerned about the tables of DNS entries not corresponding; rather, he told me that I must pay an additional fee if I want to migrate my domain to GoDaddy. When I told him to cancel the whole process and refund my money, he said that he would keep $99 as the "migration fee." I now await some communication from the supervisor, who refused to speak with me on the phone.
I don't know whether other hosting companies are any better. If they are, go there. If not, I guess we all just get to smile through our tears.