The truth is, with marketing, you could do everything right and yet fall short of making waves.
On the one hand, there are a lot of best practices (thanks jbadams), but there is also such as thing as creative grassroots marketing and making sure everything you do underlines a specific strategy.
While making a game is about selling a gameplay, marketing is about selling an idea about the game, and not the game itself.
For a while, a lot of developers had success selling the story of the 'indie startup', but that's been overdone, so you need to find something unique about your situation that is noteworthy, and somehow catch the attention of the press.
Once it does, it will funnel traffic to your other marketing tools (website, etc.) and that's when it will start paying off.
As for finding that actual unique angle, I'd say a lot of people do this for a day job, and few actual succeed, so it is a right place right time kind of thing, but not just gambling.
Good luck!