Personally, I think the reasons people cheat are manifold. There are often threads on here with people asking why and it often becomes heated.
They GENERALLY boil down to men do it because they can and are sexually incontinent and women do because, well, women don't without being lied to by a man, a man has neglected her, she's the wrong sort of woman (not women like 'us').
Some people cheat because they feel (rightly or wrongly) neglected in their primary relationship.
Some people cheat simply because an opportunity arose.
Some people cheat because their relationship is essentially over and they've emotionally left their primary relationship but are still there physically for all the usual reasons - fear of the unknown, children, finances, shared life but have been unhappy for a while and have met someone else.
Some people cheat because they seek the validation of others being attracted to them.
Some are attracted to the novelty of sleeping with someome different.
There are probably more and it's also why the 'once a cheat, always a cheat' doesn't hold up because someone who has been faithful in an unhappy or sexless marriage who 'meets someome else' isn't cheating in the same way or for the same reasons as someome who seeks out novelty or validation.
There are a lot of people (men and women) who would cheat given the opportunity and a lot who wouldn't even if given the opportunity.
I often read on here that no woman would approach a man for an affair or send inappropriate messages unless the man had given her some indication he was already interested because its only men who do that. But it's not true.