A bit of advice on how to give advice, if you want it to been taken as constructive criticism rather than an attack. Consider that the person you're giving said advice to might actually have an intelligent thought or two in their own head, and may have already drawn their own conclusions which may differ from yours. When that person says, "Thank you for the advice, but I'm going to decline to take it based on my own opinions, knowledge and experience," and you refuse to take that for an answer and continue to shove your own opinion down their throat, it ceases to be constructive criticism and then becomes an arrogant attack on that person's intelligence and ability to make their own decisions.
If you've treated anyone this way, you probably owe them a pretty big apology.