Apple and AT&T have finally hammered out all of the pricing and contract details for the iPhone 3G. It’s mostly what was expected — but there are some curveballs

The 8 gigabyte version will cost $199 while the 16 gigabyte version will be $299. Both of these prices require a 2-year service agreement with AT&T. However, to receive this subsidized price you must be eligible to do so. So who is eligible? Anyone who bought an original iPhone, new AT&T customers and customers whose old AT&T service plans are fulfilled.

Those who have time remaining on an existing AT&T plan for a phone other than the iPhone will have to pay $399 for the 8GB model and $499 for the 16GB model — both of these will also still require a 2-year contract.

AT&T price plans for the iPhone 3G will start at $69.99 for 450 anytime minutes with 5,000 nights and weekend minutes. As expected, this is $10 more than the original low-end iPhone plan without the 3G support. Other plans include $89.99 for 900 anytime minutes and $109.99 for 1,350 anytime minutes. If you want completely unlimited anytime minutes that will be $129.99.

None of these plans will include text-messages — as I’ve stated before, this is the real rip-off. Despite having an “unlimited” data plan, it will cost you an extra $20 for unlimited text messaging as well. You can also pay $15 for 1,500 message or $5 for an incredibly lame 200 messages.

Even this $5 a month extra will end up costing you $120 over the life of your contract. Again, I thought we were paying for unlimited data, why doesn’t this include text messages?

All iPhone purchased on launch day will be required to be activated in stores. Yes, the nightmare scenario is true. This is going to add a lot of time to the buying process.

With the original iPhone Apple and AT&T allowed customers simply to buy the device and take it home to activate it via iTunes. This time around, to eliminate the temptation to unlock the device (to use on other networks), the entire process, including credit-check, etc, will be done in-store.

The lines may be reduced a bit as Apple has opted for a 8AM local time launch rather than a 6PM launch like it had last year. This also may lead to quite a bit more camping out outside the stores to wait for the device.

Business users will want to buy the Enterprise Data Plan for the iPhone. This will cost $45-a-month versus the $30-a-month for consumer data plans.

All iPhone 3Gs will come with the iPhone 2.0 software including the App Store.

Buried in all of this data is the biggest curveball of all though. If you want to purchase an iPhone without a contract, you will be able to do so eventually — just not on launch day. You will pay $599 (8GB) and $699 (16GB) for that privilege — which is still a lot cheaper than signing any of AT&T contracts.

But, and this is a big but, AT&T claims that these no-contract iPhones will still be locked into AT&T’s network. The idea is just to allow users to pay month-to-month if they wish. It’s not yet clear how AT&T will enforce this — but you can be sure there will be work-arounds.

So if you really want an iPhone 3G but really don’t want to use it on AT&T’s network, wait. For everyone else, see you at an AT&T or Apple store at 8AM on July 11. There will be no online sales initially.

And one more thing: Existing customers save $18 on activation fees.

Update 3/09: Finally, all these months later, you can buy an iPhone 3G without a contract. But it’s likely only because Apple and AT&T want to clear out inventory to make room for a new device.