Friends are really important. They make you feel anchored to the world, and without them, you feel lonely, isolated, and depressed. They care about you and do things with you. You can talk to different friends about different things - you can blow off steam, you can get feedback, or you might receive a badly needed dose of comeuppance and become a better person. But most importantly, it feels good knowing it matters to other people that you exist.
But even when people have great friends, they somehow still manage to screw it all up. Here are some steps you can take to prevent losing a friend:
The best way to ruin a wonderful friendship is to make negative assumptions. If a friend doesn't call you for four days, you assume they don't like you, they forgot you, or they are being rude and insensitive. You lament that they should know you are going through stuff. However, instead of making negative assumptions, you could just pick up the phone and say, "Hey, are you OK? I haven't heard from you, so I was concerned about you."
That's a friend - the other is a parasite.
Gossiping and betraying someone's trust is another way to ruin a friendship. Talking to anyone about your friend's personal issues, feelings, and thoughts is a huge betrayal.
Failing to reciprocate. One of my main definitions of a friendship is that it's reciprocal. Now, that doesn't mean you have to do the same things back and forth, that's sort of silly (i.e. you got me a piece of bread, so I need to get you one). Reciprocating means making an effort to do something benevolent for the other person (e.g. getting your friend bread if they're hungry, or helping them untangle their hair if their hair is tangled).
Talking and not listening. Somebody ruined a friendship with me by not listening and only talking. She didn't even listen when I tried to talk to her about not listening. I took her hands in mine, sat really close to her so that we were almost nose to nose, and told her that I loved her and enjoyed doing things with her, but there was an issue. I told her that I couldn't talk to her about anything without her stopping me and talking about herself. I talked about how it always got either intrusive or competitive (i.e. I couldn't talk to her about a toe without her stopping me to tell me that she had 20 toes). She said she was sorry and that things would change, but they never did. So we took a break. The break has lasted two years, and it has been good. It's not that she is a bad person, she's just not a good friend.
You need to have an attitude in life that your problems are not more important than anyone else's. There are a lot of people who have a problem hither and thither, and they are just horrible to everybody. We all are a little grumpier or more reserved when we are stressed out, but when that happens, just hold up a Post-it note that reads, "I'm stressed out beyond comprehension, don't take anything I say seriously." Just communicate it any way you can, and make it fun.
Another way to ruin a friendship is failing to stay in touch. With technology these days, there is almost no excuse for not staying in contact. You can send a text or an email if you don't want to lick a stamp, or you can video chat.
You also lose friends by only making use of them when you need them. When you don't need them, they get dismissed. You have to do things to nurture the friendship. Think of cute things to say to them and do with them. Ask them how they are doing. If they have a lot on their plate, tell them that you're worried and ask if there is anything you can do to lighten the load. Even if they say no, talking to you may be just what they needed.
If you know your friend is having an exhausting time with a new baby or some other crisis, come over one night with a fully prepared dinner in Tupperware, hand it to them, and then turn around and leave. Little things like that show you are thinking of him or her. Don't be stingy. Give more than you get.
Don't sneak around with your friend's spouse, boyfriend, or girlfriend. I can't even begin to tell you how many people say that their husband or wife left them for their best friend. Excuse me? "Best friends" don't become intimate with each other's boyfriends, girlfriends, husbands, or wives. You just don't do that.
Another tip: learn to compromise and don't be competitive with their other friends and family. Just because they don't do A, B and C with you, appreciate that they do L, G and H with you. Don't make them feel stressed out to the point where they feel like they have to choose between you and the rest of the universe. And if your friend wants to try something new, don't say no. People get a little compulsive about their comfort zones. Both you and your friend should stretch out and try new things.
Don't make fun of their errors all the time. I have a friend named Sam who I play tennis with. One day he was eating dinner at our house after a game, and we started making jokes. Because he had missed a shot, he sighed and said, "Does that mean I can't have salad?" It has become a running joke between the two of us. Whenever we miss shots we should have made, we keep going back and forth with which parts of dinner we should and shouldn't get. You can have a good time poking fun, but don't belittle each other.
Lastly, act like a friend, not a parent. You can't control how other people behave. If you see your friend being self-destructive in any way, tell them, "It just kills me to see you hurting yourself like this because this is in your control. It doesn't feel like it, but it is." That's not being a parent, that's being a friend. If their self-destructive behavior becomes more typical, then you have to draw a line. You're not telling them how to act - you're telling them what your expectation of a friend is. If they don't fall into that category, then they're not a friend and they're not somebody you should put effort into.
Let's say, for example, that you have a friend who is married with little kids and is flagrantly having an affair. I would discuss it with them several times, talk about the impact on the kids, their marriage, etc. If that doesn't work, I would ultimately say, "I don't have friends who betray the people who love them and are willing to have fun at the expense of their kids' well-being. I am not interested in putting effort into somebody like that as a friend." If they respond by saying, "Oh, well you're just being judgmental," you just say back, "Damned straight I am, except I'm judging you as 'friend' material. Whether you're 'mother' or 'wife' material is certainly not in my venue. All I'm judging is whether or not I want to call somebody who is doing this my friend."
That's the kind of discussion you should be having and feel no guilt about.