First, you cannot ever truly learn everything. Also you have to decide what you want to make / program. I, myself, make websites and for that you need HTML, CSS, and maybe some javascript. If you want to make apps or programs, learn java.
Some good places that are free are youtube and of course, Google. I find that Stackoverflow is a truly amazing site with almost any question, with an answer.
A good paid service is Lynda.com
I'd just find what I wanted to make and seach on youtube to get started. And after you have started any problems you encounter, go to stackoverflow.