During the time the US was fighting a long war against the Viet Cong, the Brits managed to defeat an insurgency in Malaysia. Some interesting reasons as to why they were able to win:
- insurgency had no ally close by
- effective national (not foreign) anti-insurgency unit
- the insurgency was that of a minority with limited support of the majority population
- limited criticizm back home
- the ideological opponents (in this case the USSR and China) were distracted elsewhere
- good will and trust towards the US (helped save Malaysia from the Japanese)
- foreign troops saw local population as allies, not enemies
This might explain some of the difficulties in Iraq. This might give some hope for Afghanistan.
http://en.wikipedia.org/wiki/Malayan_Emergency#Comparisons