Well here's my take on this..
1) IPSF - The best solution to date. It doesn't break anything (that we know of) and seems to work with every version of the firmware. However it costs money anywhere from $50-$100
2)iUnlock and AnySim These are basically the same thing AnySim is the "official" one from the iPhone Dev Team. This will unlock only 1.02 and has been shown to damage the baseband of the iPhone, thereby restricting you on the upgrade to 1.1.1. However this is free as in free!
Just my 2p worth.