T-Mobile to Sprint took less than an hour.
There is a never-ending monthly fee... I don't recall exactly how much. It's less than $3. It's not the same for all companies. Some carriers (Verizon, I think) don't charge it.
In porting from T-Mobile (GSM) to Sprint (CDMA), I purchased a phone from Amazon with a total of $150 in rebates. The Sprint rebate ($100 worth) won't go through. The terms of the rebate says "Activate your new Sprint PCS Phone on a new line of service". It appears that porting an existing number is not a "new line of service" and my rebate has been voided.
I'm dumping Sprint next year to try out Verizon.