Hi there,
Great question! The hardest thing I've had to learn with SEO...and therefore had to teach clients is the value of patience. Doing SEO right is a balance between showing short-term gains (say fixing website errors or correctly doing on page optimisation/content writing), but long-term sustainability (earning links the hard way). As an agency, SEO clients often want quick results - and most quick results in SEO either go against The Guidelines, or simply aren't sustainable.
Patience is also needed when you can see competitors using 'quick fix' methods but know they will get their comeuppance at some point. Just because a competitor is using a tactic that doesn't mean you or your client should. And that's hard for clients to swallow as they see their competitor benefitting from it, at least in the short-term.
This can mean great results taking months to show themselves. If you're doing all the right things and investing the right amount of time and effort, then good results will come to pass - but Google being Google, you can't always know when those results will surface.
Hope this helps!
Martin