As the title says, does anyone know of any good SEO courses, preferably free ones? I am a beginner at all this. I know the basics, but am befuddled as to why the SEO "experts" charge such large fees for this type of work. Is it really that challenging? Is there really that much skill / experience needed to get good results?

At the moment it seems to me, to be some kind of black art. But I'm sure there must be a way that even a moron like me can learn enough about SEO to get my website to the top of the tree, for at least some of my key search terms.

Anyways I'd be grateful for any pointers