So... who did Cain marry? Also, of whom was Cain afraid (4:13-14)? Also, do you think there is a backwards step in time between Genesis 4:24 and 4:25? Was there a whole lot of incest going on at the beginning? Was this contrary to God's will? Did Adam and Eve have other sons and daughters? Were there descendents of Adam and Eve who lived in Nod - east of Eden? I've never had these questions answered in a manner that is intellectually satisfying.
Answer: I think Adam and Eve had many children after Cain, before Seth. Gen 5:4 may lean against this, but it allows it. (They had children after Seth, but it doesn't rule out that they had children before Seth, too.) Gen 5:3 says they had Seth when they were 130 yrs old - plenty time for other children, from whom Cain would marry. They are mostly not godly - it's like Gen 6:5 already. (Seth is a relief for believing Adam, I think). Adam has Cain and other children and grand children, 4-5 generations' worth, with whom Cain could build a city, before Seth comes along. Basically I see 100-120 yrs going by "in the process of time" of Gen 4:3.