This question was the Achilles heel of the Scopes trial in 1925. It was without answer, proof that the Bible is in error. The biblical account couldn't have happened because Genesis lists Adam, Eve, Cain, and Abel as the only people on the planet and then Cain kills his brother, goes over the hill, and marries. What?! Clearly couldn't be true. Is this true? Does the Bible require that the biblical account be false (or myth or ...)? Let's look.

First, my premise. The Bible is true as written. If a claim violates the Bible, it isn't true. If it's in there, it is true.

Here's what we do know: "In the beginning, God created the heavens and the earth." (Genesis 1:1). We know that "All things were made through [Christ], and without Him was not any thing made that was made." (John 1:3). I've seen some argue that Cain married a Neanderthal. This argument is premised on "God did not create all that exists" (this article argues that Satan created the "earlier races".), so we'll have to throw this concept out. So, what else do we know? Well, given that Adam and Eve were the proto-humans, the first of the line, then their offspring were all the available humans for marriage and family. Thus, let's just start out with the very clear conclusion (not text, but conclusion) that Cain married a relative. No other possible conclusion. And, of course, it must be true. If Adam and Eve were the first, then all of us are marrying relatives. We're just much more widely distanced in time and relation. In Cain's day, there wasn't the opportunity for such distance.

"But," you will tell me, "there is no mention of girls in the family. Isn't this a violation of the Bible?" Well, hold on. We read in Genesis that Adam and Eve "had other sons and daughters" (Genesis 5:4). So there is mention of girls. No, it's not a violation. In fact, it was routine (continues to be today) to not mention people in stories, historical or otherwise, who are not germane to the story. And, in fact, to the culture of the time, women were typically not particularly relevant to the story, so they weren't mentioned. So Genesis 5:4 tells us they existed, it just doesn't tell us when or how many ... "other sons and daughters". So Cain married a close relative.

"But," you will complain, "that's incest. Everyone knows that incest is wrong." Well, it is today. And it was in Leviticus 18 when God handed down those rules to Israel through Moses. But, there is no record of any such rule prior to Moses. So Lot (by subterfuge, not intent) had sex with his daughters[1] (Genesis 19:30-38) and Abraham was married to his half-sister (which didn't seem to raise God's ire). There are accounts of incest, both with and without negative conclusions, but all of the ones without negative connotations were prior to the Mosaic Law and, thus, were not a violation of God's instructions.

"So," you will enjoin me, "who did Cain marry?" Obviously we don't have a name. Here's what we do have. "Then Cain went away from the presence of the LORD and settled in the land of Nod, east of Eden. Cain knew his wife, and she conceived and bore Enoch. When he built a city, he called the name of the city after the name of his son, Enoch." (Genesis 4:16-17). "Ah, then," you will argue (as so many do), "Cain's wife came from Nod, not from Adam's line." Why? Note that it says that Cain left and Cain dwelt and Cain "knew his wife". It does not say, "Cain found a wife in the land of Nod". It only says he "knew her"[2] there. So don't assume that there was a place named "Nod" populated by other people and Cain went there and found a wife. It's not in the text. If there were such a people, they would have to be direct descendants of Adam and Eve, and thus Cain's siblings or close relatives.

Part of our problem, I think, is laying modern perceptions over biblical history. For instance, in your mind, how old was Cain when he killed his brother? I suspect you'll have a young age in mind. Maybe 20 or 30 or something like it. Why? Because that's what we know. But these people weren't living the same lifespan we do. Adam was 130 when he fathered Seth (Genesis 5:3) and lived another 800 years after that (Genesis 5:4). Seth was a young 105 when he fathered Enosh (Genesis 5:6) and lived another 807 years (Genesis 5:7). I mean, these people are living for centuries. So if Cain, for example, killed Abel as a "young man" figuring in pre-Flood years, he could have been 100 (childbearing age for these people) and still have a long life ahead and plenty of other siblings around. Further, there is the problem of terminology. Here, let me show you. I have an older sister and younger siblings. Thus, you would say that my older sister is the "firstborn", and you would be right. However, in biblical terminology the "firstborn" was always a reference to the firstborn son. So, riddle me this. The Bible lists Cain as the firstborn (doesn't use the term, but he's the first son listed). Does that mean that Cain didn't have older sisters? We, in fact, cannot say. Their absence from the text doesn't indicate their absence from existence. Thus, there is no textual reason that Cain couldn't have had both older and younger sisters, even prior to Abel's birth.

Moving away then from our modern problems with ancient times, we find that incest at the time was a given, not a problem, that these people lived a lot longer than we do, and that there is no reason why Cain couldn't have had sisters--even older sisters. Given all this, the question of who Cain married becomes moot. He married a sister. Neither immoral nor illegal at the time. Necessary, in fact. It doesn't require a violation of biblical text which, say, a view that Cain married from another race of humans would demand. It may offend our sensibilities, but it doesn't transgress the biblical account and it leaves us with an answer that seems to plague too many people.
________

[1] Note that the Bible presenting such a story doesn't mean that it approves of it. Indeed, the offspring of this nasty event were the fathers of the Moabites and the Ammonites, two enemies of Israel. Not good.

[2] Everyone, I'm sure, understands the intent of "knew her", right? Even the unbeliever knows the concept, "Knew her in a biblical sense".