A long-term relationship is extremely rewarding but is hard work. As others have said, it involves a lot of compromise, and as people change over the years those compromises may also need to change. Another absolute must IMO is that you must be friends with your partner. There's no need to live in each other's pockets and do absolutely everything together (that would drive both me and my husband batshit insane), but there needs to be that connection and a true longing to do some things together and be comfortable with each other. If you can't laugh together, something is wrong.
My relationship with my husband sure as hell hasn't been all sunshine and unicorn farts. We were separated for 1 1/2 years, have tackled several demons, and still, after almost 18 years, have the occasional argument that must either frighten or amuse the neighbours (part of the joy of living in a semi-detached house with good acoustics). It's how we are. Our relationship isn't perfect, but perfection must never be the aim of a relationship, because that level of expectation will only lead to disappointment. It's about both of us being equally committed to make it work. We drive each other nuts sometimes, but I wouldn't be without him.