The USA should not fight such wars in the future.
Not because they can not be won (although certainly Iraq was probably more costly and difficult than expected). No - because the USA is too politically fractured and increasingly dis-unified in terms of common culture and sense of national identity to commit to the sacrifice needed for such long-term projects. Because of this, the expected costs of such wars are also unstated by policy makers.
The USA fought a war in the Philippines in 1899-1902, which killed over 6100 Americans - yet did this war split America, as the left did to the USA in 2004-2008? Why not?
If I knew then what I know now, not only would I have taken Hussein out, I would have done it in 1991. In addition, in 92 I would have taken out Bin Laden.
After that, everything else is irrelevant.
Same reason Vietnam and the Iraq wars did split America. We went from the telegraph and some still photography to Television and Internet. When non-soldiers and families of soldiers are confronted with the horrors and realities of war it is devastating. WWII had federal Committee on Public Information to censure things devastating to morale. The first Iraq war was a bit different as we had a clear defined goal - drive iraq from Kuwait - and most of the fighting took place at range ( lobbing missles at enemy positions). I wonder in 1902 how many Americans knew that we even had troops in the Philippines, what the literacy rate was to be able to read such news, and how was it reported? Anyone got any good suggestions for books that compare war journalism throughout American history?