You'll be surprised how easily you can engage in a decent discussion if you actually listen to the other person. I've seen countless people argue about a topic without realizing that they are both on the same side of the debate, rather than listen to what the other is saying their main goal is to simply get their own point across. You can learn and understand much about a person if you simply listen to their point of view, you'll understand where they are coming from and you'll better communicate your point.
2. Never argue empty opinions
Opinions are empty unless you can back it up with fact, either firsthand experience and/or through secondary research. It's easy to be dismissed if you have an opinion that cannot be followed up with a solid reason why you have it.
3. Establish the difference between opinion and belief
An opinion is easier to change over a belief. A Persons belief system is a very big part of who they are, it's a part of their identity, which is why listening to people and understanding them is very important. If someone truly believes something that you strongly disagree with, have them focus on why they may be right rather than why you may be wrong, you'll gain more understanding from their perspective.
4. Keep an open mind
People are more willing to share and are able to discuss more openly if they feel they are speaking to someone they may be able to influence. Never go in with a "know it all" attitude, not everyone is right not everyone is wrong...same goes for you. Try and stay unbiased and avoid dismissing someone's point until you have fully understood it.
5. Never judge
Everyone's journey is very different, if you truly want to engage in an honest discussion than don't let the other person feel judged. The more one feels judged the less they will share, insecurities and doubts will rise to the surface and you will only engage in a dead-end discussion resulting in a negative outcome.
6. Be patient, respond only when you have received all the information
Don't cut somebody off midpoint and only respond if you feel you have received enough information, otherwise get the person to explain further. It enables you to construct a better response and find out how prepared and knowledgeable the other person is on a subject.
7. Never be afraid to ask questions if you don't understand
I feel this is a true trait of an intelligent mind; never being afraid to ask a question. After all, it's why we have so many answers today, if you don't understand, ask! It shows that you're interested and that you want to understand.
8. Be honest
Honesty is difficult, especially if your opinion or belief has been challenged and you begin to see the opposite point of view clearer than your own, I believe it was his holiness the 14th Dalai Lama that said "If science proves some belief of Buddhism wrong, then Buddhism will have to change." Trust me it's much better going through life with the right answers than living with the wrong beliefs.
When someone opens my eyes to something I never believed, I'll always admit they're point is valid and then delve into research to prove it for myself. This way you can form a constructive belief rather than taking someone's word for it.
9. Keep the same tone and tempo...be the king of calm
Discussions can easily turn into heated debates, maintaining control is key to a good discussion no matter how different the opinion. I find when discussions elevate to certain levels, responses are motivated by emotion over fact and understanding. Both parties should walk away more informed rather than frustration and stressed.
10. End on a positive note
We are all different and we all have different motivations, there is no need to let someone feel belittled or defeated if both parties cannot come to a mutual understanding. The way I see it, you can respect the other person for standing by what they believe in, you'll have that to agree on if nothing else!