Maid of Honor of a single woman whereas a Matron of Honor is a married woman. Generally there is only one Maid of Honor, but in these modern times pretty much anything goes. If you have two equally close friends and feel the need for a Maid of Honor and a Matron of Honor then it's the bride's call.
A maid of honour is an unmarried friend/family member that acts as your head bridesmaid. A Matron is a married friend/family member acting as your head bridesmaid.
From the standpoint of etiquette your sister should take precedence. After all, your sister is your sister for life. Best friends sometimes fall out of favor (or, at least, diminsh in contact -...