Acts 17:26 says that God "made out of one man every nation of men, to dwell upon the entire surface of the earth”.
So if Adam and Eve were the only humans at that time, where did Cain get his wife?
The answer can be found in the Genesis account itself:
Gen. 5:4 says, "And the days of Adam after his fathering Seth came to be eight hundred years. Meanwhile he became father to sons and daughters."
So, when Cain was banished from the Garden of Eden and went to “the land of Fugitiveness to the east of Eden,” he took with him his wife...an anonymous daughter of Adam and Eve. (Gen. 4:16, 17)
Another natural question arises. Was Jehovah God fostering what is now called “incest” by arranging matters so that the first children of Adam would marry one another - brothers marrying sisters?
No. The first parents were originally created as perfect by God and even though their children inherited their sin (Rom. 5:12) they would still have been born closest in line to perfection. There would have been no family weaknesses to be passed on and accentuated by the marriage of near relatives, as is the case today, when the sinful human race has greatly deteriorated and many genetic defects exist. Even after Adam had sinned, his descendants lived as long as 969 years in the days before the Flood. - Gen. 5:27.
Accordingly, it took a long time for genetic defects to become so numerous and so grouped in family lines that it became dangerous to the offspring for close relatives to marry. Even Abraham, some 2,000 years after the creation of Adam, married his half sister. (Gen. 20:12) Not until God gave the Mosaic law (about 500 years later) did He prohibit close family marriage unions among the people of Israel. - Lev. 18:6-18
For more, see:
Does the bible condone incest? (jwitness forum)