My DH is from a ME country. We have been married six years and have two DCs. Our relationship is pretty good, and has certainly become stronger with time, but if I am really honest with myself I am not sure I would have married him given my time again.
This is no reflection on him. We met in his home country and I knew pretty much what I was getting myself into. His parents are also great and leave me as much latitude as they can, within the whole when you marry my son you marry my family cultural trope.
We have spent a lot of time in France as well as the UK as DH has a good job and has completed further study in France. He did this off his own back and has always supported me, not the other way around.
The trouble is, and DH has always stayed legally in France and the UK, is that if anything does go wrong in the relationship and you have kids you both find yourselves in a tricky position. I am pretty sure that Iran is not party to the Hague agreement, and neither is DH's home country. This means that in the event of a split, one side of the family and probably one parent will never see the kids again as the risk of kidnap in allowing the children to travel is too great. That is a horrible thing, especially for grandparents who were probably not party to the marital dispute.
Even if you stay together, there will almost certainly be one side of the family you see very infrequently.
Sorry for the massive ramble, but what I am getting at is that even if he is 100% genuine and self sufficient and perfect, marrying someone from outside the EU and from a very different cultural background has wide ranging consequences that you should be aware of before you become involved.