I tend to learn languages in a highly systemic manner, starting with the script and phonetic system, then the niceties of grammar - conjugation, declension, structure and all that good stuff, then the numbering system. I'll build vocabulary as I go, often very unevenly - often knowing quite a few unusual or specific words while not knowing how to say much more basic things. Languages are a special interest of mine, and I'm almost always in the process of learning something linguistically related.
What impedes me most in learning a language is how its morphophonology translates into real-time speech. Some languages, such as German, are pronounced with brief but discernible pauses between words, while in languages such as English and French multiple words (not just clitics) are pronounced together as though they were single words, making it much harder for one already struggling with an auditory processing disorder to keep up. English is also terrible for supporting "lazy speech", where actual pronunciations often deviate substantially from the official phonetic forms. Being my first language, this is not so big a problem for me - most people I understand well, although there are more than a few who are a struggle to comprehend. Invariably, I can read a new language before I can understand it spoken, and tend to be more clumsy speaking than writing.
I'm now in Serbia, so learning the language here is necessary. With a sensible "write as you speak" spelling regime and a reasonably regular grammar system, I am finding it one of the easier languages to learn, even when written using the Cyrillic script.
Overall, I found Korean (which I kind of gave up on) and French the hardest to reach a basic "conversant" level (meaning I can be polite, ask for/receive/give directions, order food and count), then Japanese (which I subsequently forgot much of), with Spanish, German, Serbian and Inuktitut being the easiest.