This is something that has been discussed on forums everywhere and there is no real answer.
Just arrived in San Francisco with my swedish iPhone 4, went into a T-mobile store and bought a Monthly4G package for 50$, this gives me unlimited data, talk and text for one month.
Added 10$ and I got free text and landline calls to Sweden.
The only bad thing is that T-mobile 3G network uses a frequency that the iPhone (and many smartphones) cannot use so I’m limited to Edge data transfer.
But still this is very cheap and if you travel with someone you can call them for free while on vacation.