- Poor communication. If you want to get married, quit your job and raise a family, tell them that BEFORE you get married.
- "Sexual incompatibilities" That is, if you can't satisfy each other's desires sexually, it won't matter. You both need to be attracted to each other at a bare minimum - so if one of you gains weight, it can cause a divorce. If one of you likes feet, the other better like getting their feet massaged. Some people want sex with many partners. Such a person needs to find someone willing to accept that. Or not get married at all.
- Compatibility. I.e. you have to actually LIKE the person. Enjoy spending time with them. Even if you find them acceptable, you can't be bored with them or you will divorced
- Low Tolerance and Rigidity. I.e. you can't dislike the person's habits - especially if you have the same habit. If two people both want to be in charge, that won't work. If one person snores, and the other wants a good nights sleep they better be willing to sleep in separate bed rooms. That also means your preferred jobs/religions/cultures do not cause problems.
- Money. Money differences are a big one. If one person is marrying the other for money, that money better be enough. If one person spends a lot and the other saves, that will cause problems.
- Unwilling to Commit. You need to both be willing to work at the marriage. Marriage is a marathon, not a sprint and you need to work on it all the time.
- Not capable of the commitment - because of illness, addiction, or abusive personality.
- Children are a whole other level of commitment. Think of it as commitment squared. You need to spend so much time and money on them so it will make Money and Commitment problems even worse .
- Personal growth. People grow as time goes by. You may become bored with something or someone you used to enjoy.
Note some of these problems get 'reverse blamed' in the court of public opinion, particularly if the person with the real problem dealt with it poorly. Stop trying to blame people, instead avoid the problem in the first place. Among other things, I am a big believer in sharing the blame. People don't start cheating on you out of the blue - they either were always a scumbag or you have been ignoring their needs. Same with fighting over money. He may be a cheap SOB, but that makes you a spendthrift. Worse, you both should have known this before you got married. Don't marry, cripes, don't even date someone that isn't acceptable to you in the first 8 categories (9 is hard to measure before it happens).
So let's talk about how you know before hand.
#1 is fairly easy. Talk to them. Not just about the easy stuff, but about the hard stuff. The emotional stuff.
#2 is generally best figured out with experience. But you can start out by being more honest - and talking about sex before you do it. Generally a woman has to initiate this conversation, otherwise the guy comes off as creepy.
#3, also via experience. Do you have fun with them - when they are sober. Drinking often makes people think they are enjoying themselves but aren't really.
#4 - ask your date to name some small thing that pisses them off. If you do them, reconsider. I.E. neat freaks should not even date messy people - not if you are considering marriage.
#5 Ask the date if they think X amount of money is too a good vacation, bad vacation, or just OK.
#6 and #7. If they don't want to commit, don't try to force them. No tricks, just leave. Also make sure they actually can commit.
#8. If you are not on the same page for children, don't go ahead without the other person.
#9 is a bit of a luck, but if you find someone that is in a shell, don't be surprised if they break out.