The latest post by Peter Enns explores the connection between Adam’s story and the story of Israel, and in the process explains where Cain got his wife:
Look at it this way. The word “adam” is ambiguous in Genesis. Every commentator notes that sometimes “adam” represents humanity (so I will use the lower case); other times it is the name “Adam” (upper case) representing one man. What does this back and forth mean? It means that Adam is a special subset of adam.
The character “Adam” is the focus of the story because he is the part of “adam” that God is really interested in. There is “adam” outside of Eden (in Nod), but inside of Eden, which is God’s focus, there is only “Adam”—the one with which he has a unique relationship.
The question in Genesis is whether “Adam” will be obedient to “the law” and stay in Eden, thus continuing this special relationship, or join the other “adam” outside in “exile.” This is the same question with Israel: after being “created” by God, will they obey and remain in the land, or disobey and be exiled?
I’m still perturbed, however, that nobody ever seems to worry about where Seth got his wife!