Russia has lifted a ban on supplying Iran with a sophisticated air defence missile system, the Kremlin has said.
Delivery of the S-300s was cancelled in 2010 after the UN imposed sanctions on Iran over its nuclear programme.
But the Russian president gave the go-ahead after Tehran struck an interim deal with world powers to curb nuclear activities in exchange for sanctions relief.
Despite the sanctions, Russia and Iran have remained close allies.
The $800m (£545m) contract to deliver the system was heavily criticised at the time by Israel and the US, who feared it could be used to protect Iranian nuclear sites from air strikes.
When it was cancelled, Iran filed a lawsuit seeking billions of dollars in damages.
Russia's Foreign Minister Sergey Lavrov said in a statement that the sale was put on hold "entirely voluntarily" to aid the talks on Iran's nuclear programme.
The Russian defence ministry said it was now ready to supply the S-300 equipment "promptly", an official there said, quoted by Interfax.
The delivery would be a "step forward", for Russian and Iranian relations, the Iranian Deputy Defence Minister Reza Talainik told the Tasnim news agency.
"I think Russia has returned to the first step and is prepared to act upon its previous undertakings. We hope it will do so and show us its good will," he said.
Israel reacted with dismay to the news.
"This is a direct result of the legitimacy that Iran obtained from the emerging nuclear deal,'' said Intelligence Minister Yuval Steinitz.
He said it was "proof" Iran planned to use relief from sanctions for arms, rather than the welfare of the Iranian people.
The White House said US Secretary of State John Kerry had raised concerns with Mr Lavrov about the announcement, spokesman Josh Earnest said, without elaborating.
The deal aims to prevent
The S-300 is a surface-to-air missile system that can be used against multiple targets including jets, or to shoot down other missiles.
Russia was one of six major world powers to reach an outline agreement with Iran over its nuclear programme.
The sides have set a 30 June deadline to reach a comprehensive deal.
Tough negotiations lie ahead, in particular on how and when to lift sanctions.
Meanwhile,Mr Kerry is due to brief Congress, as the Obama administration attempts to persuade opponents not to block the deal's implementation.
He said they should "hold their fire" until they see a final agreement.
Iran's Supreme Leader, Ayatollah Ali Khamenei, has cautioned against seeing the interim agreement as a guarantee of a final deal.