Dumb isn't used to denote what its original meaning is (a person unable to speak - we would use the word "mute" today). Dumb just means stupid, as if one is culpable for their own stupidity.
Retard in its noun form literally means a mentally handicapped person. So by using it to offend a non-mentally handicapped person (albeit, a stupid one), you are concurrently levelling an offence against the mentally handicapped in general and since the mentally handicapped are not deemed culpable for their situation, this is deemed socially unacceptable.
It literally means delayed in time, we use it in physics a lot, in the context of people and development it applies to those whose education (or cognitive ability) is delayed in time.
I think the word is typically pronounced slightly differently (more correctly?) when used that way. This clip from The Hangover uses the slight differences in pronounciation for comedic effect: http://www.youtube.com/watch?v=PoendYt_ZJ0 (skip to 0:45, video contains mildly offensive humor).
Obviously the obsolete medical usage, now offensive usage, is just the regular word meaning delayed, but I think that somehow that specialized usage strayed from the generic usage over time.
Well, no, a mentally "retarded" person is not expected to develop further. They're behind, but nobody thinks they'll catch up. "Stunted" would be a more accurate term than "retarded"; the latter is just a euphemism.
In the US, "intellectual disabilities" used to be more commonly called "mentally retarded" and referring to someone as "retarded" or "a retard" became (or was always) offensive.
My own suspicion is that it's a matter of fashion. More specifically, there are lots of problems in the world, and someone is always going to be insulted when one of them is referenced lightly. Right now it's fashionable to treat the word "retard" as a politically incorrect slur, so those particular people have social permission to complain about it.
What I can't make up my mind about is whether or to what extent we should approve or disapprove of the use of these words.
"Retard" means somebody with a significant mental handicap, while "dumb" is a more usual sort of stupidity.
It's extremely strange. It is socially acceptable to criticize and make fun of the intelligence of someone with an IQ of 71, but not an IQ of 69. I can't explain it. But that's how it is.
Hey, I find people being offended by the use of certain words offensive in and of itself. You should reconsider your reaction, so as to prevent me from being offended.
I'd appreciate it if you'd edit your comment to reflect this.
edit: Thank you for editing your comment.