Most Helpful Guy
By definition, cheaters are selfish and self-centered. They agreed, either explicitly or by default, that they would not break the trust of their partner, and then they do it anyway simply because they want to. It doesn't get much more selfish than that.
The thing is, people who are selfish like that rarely become selfish enough to cheat one day - in the vast majority of cases, there were LOTS of signs of their selfishness beforehand, with plenty of bad behavior. Many people are completely in denial when their partner is that way, and many are co-dependent. While you can't blame them for the cheating, they have to accept some responsibility for choosing and then staying with such a selfish person.
And, yes, I can acknowledge that there are a FEW people who are so good at playing the game that it's very difficult to know that they live a secret life when they're away from you. Unfortunately, there isn't a lot you can do ahead of time when someone is both skilled and determined to cheat on you without you finding out.