There's a surprisingly thorough, free web site devoted to music theory at musictheory.net - sure they are also selling products, but they are giving alot of information away. But as a technical writer, my theory of information is always "information wants to be free."
But there's nothing like attending a music theory class like the one I've been taking in Brooklyn the past month. Unfortunately class was cancelled in the last two weeks thanks to a. Hurricane Sandy and b. the Election. I'm looking forward to going back this Tuesday.
I do think that the most important aspect of music, though, is emotion, and that's something that's not part of music theory classes. I'm not suggesting that knowledge of pitch, scale, rhythm, etc. are not essential for understanding how music works - but it's the impact on human emotions that is what makes music so valuable to people.
Once I started playing with the fantastic free application Garageband, which comes with all recent Macintosh laptops, I had that insight - that what music is really about is emotion. And once I realized this, I was able to compose music. Prior to the insight I approached music mechanistically - I thought that if I experimented long enough with enough note combinations I would find a good melody. But once I approached music emotionally I found that the melody would appear on its own in response to emotional evocation. Here is the first, Garage-band-loops-aided piece I created, Cinco de Mayo: