I'd like to know which of these two phrases you use more often. I know that in general they both mean "a double edged sword" is one used more in Taiwan or in mainland China?
刀, by definition, usually has a curved blade with one sharpened edge. Thus a Samurai's sword, a scimitar, and a machete all fall into the definition of 刀.
If it has a double edge, and it has a straight shape, it is usually a 剑.
双刃剑 is the standard translation of double-edged sword. There is no usage difference between Taiwan and the mainland.
In very rare cases, 两面刀 is short for 两面三刀, which describes a two-faced person who is secretly trying to harm the other.
双刃剑 definitely. Chinese swords are always double edged.
There is no 两面刀, it's too dangerous for the user. This word became a metaphor for 'double-dealers'.
For such comparison, google is a nice tool. You can compare the popularity of words by the number of results found by Google. Remember to put a phrase in double quotes to search the exact phrase.
- "两面刀" used to be a popular phrase in Ming dynasty. Most search results of "两面刀" are sayings in Ming dynasty that contain "两面刀".
- The literal meanings of "双刃剑", "两面刀" are rarely used, their metaphorical meanings are quite different.
双刃剑 is usually used to describe something having a good side and a bad side, it may solve a problem, but it creat another problem at the same time. Just like a double-blade-sword, you can force it to your enemy to hurt him, but if your enemy push it back, it can hurt you. 双刃剑 is never used to decribe a person.
两面刀 is rarely used. I think it might be used as short of 两面三刀, which means a person pretends to be your friend for today, and turns his back on you or betray you tomorrow.
双刃剑is more graceful.Sounds like "Washington District of Columbia".(often used)
两面刀is more plain.Sounds like "City".(rarely used)