Speaking as someone who has had WinMo, Nokias etc. I can honestly say that my iPhone 3GS is the best device I have ever had. User interface is functional and simple and I can find an app for everything - plus the apps are mature. JB adds a new level to it, and provides the customisability that I love to do.
What I don't like about the iPhone is the restrictive nature of it, with the extreme control that Apple has. Ofc i have jailbroken the iPhone but Apple are making it increasingly harder to do this and I fear we are not far away from them making it near impossible to do so (hell you already have a situation with the newest phones having a tethered jb - i.e. they need to re-jb if their phone loses power, or is rebooted).
That being said, and my heart being in Linux land, my next phone will hopefully be the HTC Desire. I love the customisability of Android, the less restrictive nature, and for someone like me, I reckon i'll get more fun out of it.
The Desire's hardware beats a 3GS hand down. Android is getting there but is not as mature (obviously) as the iPhone OS, and nor are its Apps. But they are getting there. The Desire is a good enough handset that in a years time, Android really will be competing with the iPhone and your hardware will still be capable.
My wife will get the iPhone....