I don't have problems to make friends... in fact, I make friends with reasonable ease.
(So you probably don't get why I'm in this forum... well, I have another kind of problem xD)
So, if you want my personal opinion based on my experience, the secret resides in your (good) vibes.
You can call me nuts, but I'm very (very) linked to personal energy, if you know what I mean. The lack of self-esteem and associated problems, it transmits bad energy through all your pores no matter how you are a good person or how big is your heart, how good are you're intentions. So you have to love yourself to be loved by others and this is the irrevocable fact that everyone choose to ignore. You have to look into a mirror and you have to like what you see (and I'm not talking only about the physical because, believe me, I'm not that pretty and still I love myself).
If you do this, no matter how difficult may be, you'll notice the difference. Don't expect to be a social beast, that's not what I'm talking about. I'm talking about having friends because that's what this topic is all about, I guess. Don't expect to be loved by everyone because even those who seem like they are loved by everyone... guess what, they don't.
I know how it sounds cliche, but it's the truth. You know I like to make friends and I don't like to discriminate, but sometimes... some people don't give me a chance because they don't give a chance to themselves. You see, everyone likes people with self-love, with sense of humor (genuine sense of humor), people who transmit safety... and you only can be like that if you love yourself. You know, it's like... you can't be a good listener if all you want is to be heard.
Maybe this is a bit confused but I hope you guys understand what I mean
Sometimes is difficult for me to explain my point of view in english, I talk way too much xD