What is the best way to learn chess strategy and tactics?
When I started working on my chess, I improved a lot just by playing at least one game a day with more experienced tournament players who would point out reasons why I lost afterwards.  It was definitely more efficient than just reading chess books, which I did on the side.  If there is a chess club nearby, you should definitely check it out.

I am guessing from your focus on online chess sites, books, and chess softwares that playing over the board with a human opponent is not an option.  On chess.com, you can ask if your opponent would want to discuss the game afterwards.  Even if that does not work out, just by playing alone you are already building up your collection of chess patterns.  In my case, I learned the dangers of the Nc7 fork, vulnerability of the f7-pawn, the Q+N smothered mate combination, among others just by having them inflicted on me.  After you have fallen victim, say, of the Nc7 fork several times, it will be so much harder for your next opponent to pull the same tactical trick on you.  You may even be the one to inflict the Nc7 fork in your next game.  There is no substitute for practice.

As for books, you may want to try books with lots of tactical puzzles.  For one thing, you will be actively solving problems rather than passively absorbing information.  And for another, the time you spent working on tactics will pay immediate dividends at the board.  To get started, you may want to look at Heisman's annotated list of chess books.  The link jumps straight to the section on tactics, but you should definitely check out the rest of the page as well.

I hope that helps.