Wherever you may work, you will eventually work with people who are difficult, rude, unpleasant and impossible to please. It's just part of interacting with people.
I work in support. I am a web developer but I do work more directly with our clients than those who work on projects at my particular place of employment. Those who work with projects usually don't deal directly with clients. That is the project manager's job. I'm not saying that developers than work on projects don't ever interact with clients. They do. However, as a developer working in support I will field a variety of calls and tickets directly from clients regularly.
I find the majority of clients are not an issue. I expect some to feel frustrated because something's not working as they expect, they did something wrong, or they just can't figure out how to do something. Most are polite about these sorts of things though and we can get their issues resolved quickly. However, there is always going to be "that" person.
I'm no expert at handling difficult people but I do my best. However, when I have a client upset about something and talking at breakneck speed, I admit, my blood pressure rises, I feel defensive and a bit frustrated too. However, I'm the professional and don't want to make my life more difficult by arguing with clients.
So what do I do?
I listen. If they call and are just ranting and raving, I will just let them rant and rave or a little bit. I take some notes.
I acknowledge how they feel and try to see the issue from their perspective. I'll use phrases like, "I understand how that is an issue", "That must be very frustrating...". I want them to know that I care and am not going to dismiss what they say or how they feel.
Slow things down. When people get upset it seems like you're being pummelled with various things and past or unknown grievences may be brought up. Try to do one thing at a time.
When taking care of their issue, be communicative. Don't go for a long period of time without communication. I think it gives them confidence that you are addressing their issue.
Once you get their issue resolved try to follow up and make sure there isn't anyting you overlooked.
This isn't perfect and I'm no pro with difficult clients or people in general. I try to do my best to avoid difficult situations by doing my best work. Sometimes it's unavoidable though.