What is the difference?
Is ''maiden'' romantic?
Virgin is quite specific - it means someone who has not had sexual relations, and in fact can be used for either men or women. It can also be used to mean "untouched"/"natural" - virgin forest is forest that has never been used for timber.
Maiden is a young girl, and is not used now except in poetry or poetical writing.