I'm in my 3rd year of learning Persian but my viewpoint is quite different to Bernhard's (below)
I find reading/writing a lot easier than listening/speaking. The alphabet doesn't phase me because 90% of the letters have an English equivalent. Once you recognise the shapes it's not hard.
I just got used to the right to left thing - when I read Persian I start from the right - it's not a biggie.
The absence of short vowels is a pain. There's no way to know how to say a word just by looking at it. But even in English there are thousands of words that are not pronounced as they are spelt, that's just par for the course.
The thing I wish someone had told me earlier is that when you learn Persian you're actually learning <em>TWO </em>languages not one! Spoken Iranian Persian is about 30% different to written Persian - they differ in grammar, vocabulary, pronunciation and word order. Now, while every language has it's colloquial forms, it's usually acceptable (or even preferred) to speak "properly". Not so with Persian, they have codified their spoken language to the point where it is considered incorrect to speak in the written form in everyday conversation.
I find the verb conjugations to be extremely complex compared to English. The rules are straightforward enough, but trying to remember which of the 34 possible conjugations of "to put" to use (compared to 3 in English) - in real time - is quite the challenge!
The thing I find easy about Persian is that aside from the thousands of Arabic loan words that they use, the roots of the words are internal to the Persian language, so you can deduce the meanings of words once you know the roots. To do this in English you have to have a knowledge of both Latin and Greek roots.
This is my first second-language, and they say that's always your hardest, but from my experience, I would say that Persian is not for the feint-hearted.
Finding a good teacher helps and fortunately I've been able to find a terrific teacher here on iTalki.