I think one reason people have trouble making friends is the 'self-absorbed' image. In other words, they show no interest in the other people so why would they expect that interest to be returned (imgaine yourself as a mirror - how you are is how people are to you, type deal). One tip is to show some interest in the people you'd like you know but do you best to do it sincerely and not forcibly. Look for something you have in common as thats ALWAYS the best spot (and don't make it the weather).
Some people may try too hard or be too clingy.
Some people may challenge another person 'too often.' If they are wrong, let them be wrong unless you are debating. There is no sense in back tracking and proving to everyone how intelligent you are at someone else's expense. "Calling" someone out in front of people sucks when its 'you' who is being called out - don't call out others.
Learn comedy - it can be learned by anyone and is effective as people enjoy laughing - May also help bullying as it takes away their edge.
Be kind but don't 'fake it' via "niceness." "Nice" is manipulative. Kind is sincere.
Listen to the other people. Yes, you may not enjoy or care about every word they say but they don't care about every word you say, either. If you share stuff in common, listening comes naturally but make an effort because its a trade off. If they constantly talk about stuff you hate then you have the right to return the favour.
If you've felt you've talk in a monologue long enough, stop, and let the other person speak. I get bored when someone rambles for 80 minutes, I get 2 words in, then its another lecture. Be aware of how much yapping you do.
"How to wins friends and influence people" is an old book but one that is extremely helpful.