There comes a crossroads in every long term, meaningful relationship. It is in inevitable, being the flawed, emotional human beings we are, that at some point, one of you will do something to piss the other off, make them feel badly, or break their trust. At this crossroads, you have a decision to make: forgive and preserve the friendship or let it go and run away.
Sometimes, you get to a crossroads and you look back and realize here have been hundreds of similar crossroads, and each time you have taken the one towards maintaining the relationship. If repeatedly this person has made you feel like complete and utter shit, has physically or mentally abused you, or has consciously and maliciously stabbed you in the back, you need to divert off the friendship path. Full speed. Run the fuck away.
If, however, this person's actions were the result of human error--if these crossroads do not define the relationship but is rather a blip in it--then it's time to practice forgiveness. For those errors that seem suffocating when fresh--a friend venting about you behind your back, a friend being rude to you when he's agitated from a bad break up, a friend canceling plans with you for a love interest-- realizing when to forgive is a practice in perspective [see "On Perspective"]. Sometimes you have to step back and think, is this worth cutting ties completely? In 10 years, will I think this was worth ending the relationship?
In some cases, the answer to this will be yes. If the person is physically or mentally abusive, if the person influences you to make decisions that are harmful to yourself, if this person is consistently making you feel awful about yourself, then this needs to be the final crossroads you come to on this friendship's path.
But if the answer is no, you need to choose the path towards forgiveness and reconciliation. This path can look bumpy and awkward and exhausting. In fact, sometimes the "adios" path can look smoother and easier. Forgiveness and reconciliation requires the communication and the effort of both parties.
Like the people in them, all relationships have their flaws. And part of maturity is knowing when to forgive those closest to us for theirs or else be doomed to continuously cycle through people, discarding friends every time they make mistakes and moving on to new ones until they do they same. Because, it is a fact of life that everyone, even the best friend on earth, makes mistakes.
Update (7/16/2014): I stumbled upon this cute webpage today and found it relevant. I indentified my, my family's, and my friends's actions within Namka's observations. If you're feeling agitated yourself, check these conditions first. Remember, prolonged anger only hurts the angry. Help yourself! Find happiness! Life is short, my friends.