If they say something negative about you, there are two reasons: one is, either they are doing it out of jealousy, or they are doing it because they love you very much. They are good friends with you and want the best for you, so they show your negative points or your weak points.
So if they say something negative, either you thank them because they took the guts and said it, which others normally don't want to say to you.
If someone criticizes you, they gathered the courage to do so, and they put their friendship at risk to criticize you. So thank them. And if they are just saying it out of jealousy, just forget about them and move on with a smile.