Iran is a big country, so temperatures differ. For instance, when I was visiting Iran in late March it was freezing cold in Tabriz and Tehran, but very warm in Esfahan. During the summer, temperatures frequently break into the 40’s (C), so it might not be the best time to visit. Especially since you need to be covered up head to toes. I’d say that the best time to visit Iran is spring (late February – late May). The worst time to travel is the 2-week long Iranian New Year holidays called Navroz (for 2018: 21st March – 4th April) . I was actually in Iran during these holidays and it was, in fact, the worst time to visit. You won’t be able to stay with many locals as everyone is visiting families and many places are closed.