I recently watched a terrific video on learning, especially as it applies to new technical skills: Making Badass Developers - Kathy Sierra.
In this video, Kathy discusses that you have various skills, and they are each at certain levels--essentially 3 levels (roughly unacquired, in-process, and mastered). And what causes many of us stress when you are engaged in learning something new, is that you have a bunch of big things in-progress. She talks about breaking these skills down into micro-skills, essentially, so that you can repeatedly master small pieces at a time.
Seriously, it's a good video. You should watch it if you haven't already, at least if any of this is a familiar experience to you. What struck me after watching this, and which I remarked to a colleague about, is that we must approach learning the same way we approach solving technical problems: divide and conquer. Partition the learning itself into manageable pieces so that it can get done and not jam up your cognitive processes. As always, finding a way to reduce and manage complexity is key.