On the occupation of Iraq, I heard a run-down of this a while back by a historian and officer in the Army. The interview was on NPR.
In short, he stated that our occupation in Iraq was pretty typical of occupation campaigns. Most occupations take about 10 years to complete. I believe it was something like 80%+ of them ended up being successful campaigns for the occupiers, if they could hold out for 10 years.
Generally, at first the occupier is viewed as an enemy force and meets strong resistance from the people of the country they're in. An insurgency and some sort of civil war generally take place. It usually comes to a head about 4-5 years into the campaign.
Around the same time as the big insurgent push, the people of the country come to see their occupiers as not actually bad guys, because generally their committing fewer atrocities than the insurgents.
After about 6 years, the insurgency is usually spent and can't muster another major offensive. The last 3-4 years are spent mopping up the last bit of resistance and stabilizing the new government.
Now, that means we're probably in this for another 4 years, but we're over the hump.
This is not an argument to say we should have gone to war in the first place or that the costs of this war are worth its benefits.
Iraq is an interesting country culturally. It's borders and everything were carved out, artificially, by the European powers after the massive colonial implosion following WW1.