Dipshit. It's my favorite insult. If you call a man an asshole or fucker, many take it as a sign of strength or say, 'i just tell it like it is." Dipshit is stupid and juvenile and naive and just perfectly describes so many people.
There are some southern or appalachian insults that I'm sure would confuse foreigners, even those who are functional in English.
Comparisons like "He's twelve ounces short of a pint", backhanded compliments like "I just love how you don’t care what people think", idioms like "three sheets to the wind". And then of course there's "rode hard and put up wet".
"He don't know shit from shinola." [I've never asked what "shinola" is.]
EDIT: Another one my Dad uses (Oklahoma born and bred): calling someone a "mudcat".
Calling someone a Muppet. In NZ (and to a lesser degree, UK/Australia), it's a common thing to call someone who's being an idiot. Not sure why. I think as a nation we generally like the Muppets, but not someone who's being a Muppet.