From Where Did Cain’s Wife Come?
Note that this answer assumes that the Bible (in particular Genesis chapters three through five) is literally historically accurate. (If we assume the Bible is not, then the question is moot!)
The Bible teaches us a only few things relative to this matter. We can use that information combined with reason to arrive at a most likely answer.
#1New Jerusalem Bible
1The man had intercourse with his wife Eve, and she conceived and gave birth to Cain. ‘I have acquired a man with the help of Yahweh,’ she said. 2She gave birth to a second child, Abel, the brother of Cain. Now Abel became a shepherd and kep flocks, while Cain tilled the soil.— Genesis 4:1-2
From that passage we learn two relevant things:
Point #1: “The man” had a wife (“his wife”) named “Eve”.
Point #2: That married couple had two sons: Cain and Abel.
#2New Jerusalem Bible
Adam had intercourse with his wife, and she gave birth to a son whom she named Seth, ‘because God has granted me other offspring’, she said, ‘in place of Abel, since Cain has killed him.’— Genesis 4:25
In many Bible translations — particularly modern, scholarly translations — this passage is the first to identify “the man” as “Adam”. From this we learn several relevant things:
Point #4: Adam mated with Eve “again”, producing a son in place of Abel.
Reasoning: The “again” (in all listed versions except the NJB) indicates that it was in fact Adam who who was “the man” (Gen 4:1-2) who had mated with Eve previously, Adam who was Eve’s husband and the father of the previously-mentioned children Cain and Abel.
Point #5: Conclusion from Points #1 and #4: Adam was the husband of Eve, Eve was “his wife”.
Point #6: Conclusion from Points #2 and #4: Adam was the father of Cain, Seth and Abel.
Point #7: Conclusion from Points #2 and #4: Eve was the mother of Cain, Seth and Abel.
#3New Jerusalem Bible
The man named his wife ‘Eve’ because she was the mother of all those who live.— Genesis 3:20
From that passage we learn that Eve was the ancestor of all human beings (excepting Adam and Eve themselves, of course).
Point #8: There were no humans alive at that time apart from Adam and Eve and their descendants.
#4New Jerusalem Bible
Adam lived for eight hundred years after the birth of Seth and he fathered sons and daughters.— Genesis 5:4
From that passage we learn:
Point #9: Adam sired not only sons, but also daughters.
#5New Jerusalem Bible
Cain had intercourse with his wife, and she conceived and gave birth to Enoch. He became the founder of a city and gave the city the name of his son Enoch.— Genesis 4:17
From that passage we learn that Cain had a wife and that Cain sired a son by that wife. Note that nowhere does the Bible teach us either when or where Cain met his wife. Indeed: this is the only Bible passage that explicitly mentions Cain’s wife.
Point #10: Conclusion: Cain was married to a woman.
Final Reasoning and Conclusion
- Point #8: There were no humans alive at that time apart from Adam and Eve and their descendants.
- Point #9: Adam sired not only sons, but also daughters.
- Point #10: Cain was married to a woman.
- Point #11: Conclusion: Cain was either married to Eve or to a woman who was a desdendant of Eve. Logically these are the only two possibilities.
Reasons for thinking that Cain was probably not married to Eve
- Point #5: Adam was the husband of Eve, Eve was “his wife”.
- Point #7: Eve was the mother of Cain, Seth and Abel.
- Conclusion: For both of those reasons, it seems very likely that Eve would have been less available as a wife for Cain compared to other women — women who were Eve’s descendants and who were not the wife of another man and who were not Cain’s own mother.
- Conclusion: It seems most likely that Cain married a woman who was a descendant of Eve (e.g. Cain’s sister, niece, grand-niece, etc.). This is primarily because the sole alternative logically allowed by the Bible’s teachings is that Cain married Eve herself, and that (for the reasons given above) seems the less likely alternative.