I spent December 07 to January 08 in Iran. I know that's more than 6 months ago, but relations between Canada and Iran were pretty much at an all time low then. Our Ambassador just got kicked out when they finally let me in.
I started the application process for a visa in August of 2007. I sent my passport directly to the Embassy in Ottawa (this was a mistake) and was told it should take about 7 - 10 days to get the visa. After months with no word, I contacted Foreign Affairs Canada and they demanded my passport back. (That doesn't help your chances of getting into Iran.)
Undeterred, I went to a visa agency and finally collected my visa, in December, 2007. There again, they promised a wait time of between 7 - 10 days, but it took months. Unfortunately, because of the unexpected delay, I was forced to leave my motorcycle in Syria and fly to Iran for a little visit. It's tough to get in, but it's worth it when you do!
So, don't bother applying directly at an embassy. I did, and if I skipped that step it would have shaved months off my wait time. You'll need a visa service or travel agent.
I used IranianVisa.com, but I would not highly recommend them. The only problem is that, almost no matter which service someone uses, they usually say that! That said, I checked their site recently and I see that their percentage of successful applications is up (maybe that's because fewer people are trying). When I applied, the success rate for Canadians was 41% but I DID end up getting it through them (though their customer service leaves something to be desired).
Another site to check is Key2Persia.com
The thing is, if you're persistent, you will probably get in... even if you're rejected once already. Try a different service.
I have heard of Canadians getting their visas directly from the Iranian Embassy in Ankara, Turkey, but that's a rumour.
http://www.horizonsunlimited.com/hub...282#post211186