This is exactly right, and it is it the best argument for having a base in Iraq and Afghanistan. Invading Iraq and Afghanistan were like invading Italy and France in WWII. We did not simply invade Germany directly.
Iran is three times larger and not very flat. About 270,000 troops were needed to invade Iraq. (See: Military preparations for 2003 invasion of Iraq). You would need about 800,000 additional troops to be gathered, supplied and positioned on Iran's borders.
This step only would take months and huge financial/political cost.
It's more and more clear that ONE of the objectives in taking Iraq was to establish a forward power-projection base in the ME to replace Saudi.
But now we have the rather challenging problem of establishing some sort of Gummint in Iraq.