In a recent interview with an Iranian Linux publication, RMS had this to say about the very issue addressed here - it's an opinion I share.
"LR: What's the best way to advocate Free Software? Some Free Software users engage in technical debates with Microsoft and Apple fans, trying to convince them GNU/Linux is more powerful. Another group focus on philosophical and cultural aspects of Free Software and try to make people care about their freedom. Which of the two mentioned approaches are more effective?
RMS: They are both "effective" but they lead to different results.
If you convince people that some free software is technically superior, they might run some free software, but they will remain ready to use nonfree software in the areas where that is technically superior. They will continue to judge an important question based on superficial issues. This is just a partial success.
However, if you convince people that they deserve freedom, they will start rejecting nonfree software whether it is technically inferior or technically superior, because they will see that free software is ethically superior. They will understand the important question and judge it right. This is a full, deep success.
Another weakness of technical arguments is that nontechnical people probably won't care about them at all. But they can understand ethical arguments. Ethical arguments are the only way we can convince nontechnical people to become free software supporters.
I figure that users can judge for themselves whether program A is more convenient than program B. So I don't try to convince them about that sort of question, except when someone has preconceptions about free software and has not tried it. I focus on talking about freedom. "