Sorry to disagree with you all, but to truly learn SEO, you're going to have to invest some money into it (services, software, etc.) and essentially lose money because of the mistakes you're bound to make when starting out. So it's basically a game of trial and error. You spend some, you lose some, you learn what works and what doesn't, then you start to profit.
Once you've put in the time reading and absorbing all the information you possibly can, I'd say a few hundred dollars is enough to get a real feel of how it works.
Good luck! If you have any questions, feel free to PM or skype me. (I won't try to sell you anything, I just like giving back to the community).