I've been an advocate of Google Voice for a while, its got a lot of great features including truly being able to keep your phone number for life and never being tethered to a device or carrier again.
I use Google Voice most when I switch to Android full-time while writing my Droid books (in order to immerse myself in the topic, natch). I also love it because I can easily forward my GV number to any/all of my phones – which is great if you use several different phones or switch devices often.
The announcement that Google Voice is now offering phone number portability is a watershed event. It means that you can now port your current phone mobile number (sorry, no landlines or corporate numbers yet) to GV and enjoy true mobile phone freedom. The announcement makes Google a pseudo-mobile phone carrier, except that it doesn't own towers, doesn't charge you anything and you can leave any time.
While it all sounds exciting, there are limits.
You have to be off contract
Porting to GV cancels your existing mobile phone service. You need to be safely outside of your carrier contract or risk paying a nasty Early Termination Fee. You should also tell your existing carrier about your plans to port in advance too -- and while you're on the phone with them, make sure that your account is paid in full before trying any of this porting chicanery. Carriers don't let you "port out" if you have a balance.
Contracts aside, iPhone users will find it inconvenient to use Google Voice.
No GV integration in iOS
Google Voice isn't integrated with iOS, it's a third-party app. For example, if you port to GV all calls made from your iPhone must be made from the Google Voice app, as opposed to the native iOS Phone app. Otherwise your caller ID will display the number from the device hardware -- not your GV/"real" phone number. If someone saves the device number or calls you back from their recent call list, you're out of luck.
It shouldn't be a surprise that Android has deep GV integration. It's trivial to set up your Android device so that the native dialer uses your GV number. It's completely transparent on Android whereas you have to completely re-wire your brain and remember to only use the GV app on the iPhone. Good luck with that.
Epicenter's David Kravets compared his experience porting to GV to an LSD trip gone awry after spending countless hours on a bizarre journey through the depths of customer service hell with his carrier. He was so pissed off that he coined a new term: “going wireless carrier," a 2011 version of “going postal.”
Danny Sullivan wrote a thoughtful and detailed piece on what its like to port to GV based on his experience using the service for six months. Sullivan's piece is required reading if you're entertaining the thought of porting to GV.
So what's with the Apple limitations?
Simple. Apple is protecting the annuity it gets in the form of a commission from the carrier fees you pay every month. Why would Apple make it easier for you to make free/cheap calls and send free text messages when it cuts into the bottom line?