Dance Etiquette is a set of guidelines that help us navigate the social dimensions of dancing. (Be sure to click on the links at the bottom to be taken to the extra information on social dancing etiquette. The author does a wonderful job of outlining many aspects.) As far as who to dance with, it is beneficial to dance with people of all experience levels. In the context of enhancing your skills, dancing with more experienced dancers often helps you to improve. Similarly, dancing with less experienced dancers is a prime opportunity for you to work on your lead/follow skills. Ideally, you should be able to lead/follow with anyone. In the context of having fun, you can have fun dancing with anybody and everybody. In short, ask everybody you can to dance, and accept dances from everyone-there is no point in limiting yourself.
Specific tips for Social Dance Etiquette: