The US President Donald Trump has said the US military was "cocked and loaded to retaliate" against Iran, but he changed his mind 10 minutes before planned strikes.
Attacks on three sites were planned in response to the shooting down of a US unmanned drone this week.
Mr Trump said he had called off strikes after being told 150 people would die.
He tweeted: "10 minutes before the strike I stopped it, not proportionate to shooting down an unmanned drone."
The late reversal was first reported by the New York Times on Thursday night. The newspaper said the operation had been "in its early stages" when Mr Trump stood the US military down.
"I am in no hurry," Mr Trump said on Friday. "Our military is rebuilt, new, and ready to go, by far the best in the world."
Mr Trump said Iran had downed the drone on Monday, despite an earlier US military statement that the incident happened at 23:35 GMT on Wednesday (04:05 Iran time on Thursday).
Tehran says the unmanned US aircraft entered Iranian airspace early on Thursday morning. The US maintains it was shot down in international airspace.
Tensions have been escalating between the two countries, with the US recently blaming Iran for attacks on oil tankers operating in the region. Iran has announced it will soon exceed international agreed limits on its nuclear programme.
Last year, the US unilaterally pulled out of a 2015 nuclear deal aimed at curbing Iran's nuclear activities.
"Iran can NEVER have nuclear weapons," Mr Trump said in his tweets on the aborted strikes - also revealing that increased economic sanctions against Iran were "added last night".
What had been planned?
In its initial report, The New York Times said that as late as 19:00 local time (23:00 GMT) on Thursday, US military and diplomatic officials had still expected the strikes to take place on agreed targets, including Iranian radar and missile batteries.
"Planes were in the air and ships were in position, but no missiles had been fired when word came to stand down," the newspaper reported, citing an unnamed senior administration official.
The strikes had been set to take place just before dawn on Friday to minimise risk to the Iranian military or to civilians, the newspaper added.
The Associated Press quoted a US official as saying the strikes had been recommended by the Pentagon and had been among options presented to senior administration officials.
According to the New York Times, top Pentagon officials warned a military response could result in a spiralling escalation with risks for US forces in the region.
The operation was called off after President Trump spent most of Thursday discussing Iran with his national security advisers and congressional leaders, AP reports.
US Secretary of State Mike Pompeo and National Security Advisor John Bolton had pushed for a hardline stance, but congressional leaders urged caution, the agency says.
Separately, Reuters quoted two Iranian officials as saying Tehran had received a message from Mr Trump through Oman overnight warning about an imminent US attack.
"Trump said he was against any war with Iran and wanted to talk to Tehran about various issues," one of the two officials said.
What has the reaction been?
An Iranian official warned that "any attack against Iran will have regional and international consequences", while Russian President Vladimir Putin said a war would be a "catastrophe with unpredictable consequences".
Iranian officials also defended the shooting down of the drone, saying that two warnings had been issued 10 minutes beforehand. Amir Ali Hajizadeh, a high-ranking officer in Iran's Revolutionary Guards, said another military aircraft, carrying 35 passengers, had been flying close to the drone.
"We could have shot down that one too, but we did not," he said.
UN Secretary General Antonio Guterres urged all parties to exercise maximum restraint.
In the US, Democratic House Speaker Nancy Pelosi said the US had no appetite for war with Iran, while the leading candidate for the Democratic presidential nomination, Joe Biden, called Mr Trump's Iran strategy a "self-inflicted disaster".
President Trump's decision to order – and then abort – an attack still sends a powerful message to Tehran.
The two countries came to the brink of direct conflict. But in this complex game of signalling, just what message will the Iranian leadership receive?
It, after all, had sent a significant warning of its own by downing an unmanned US reconnaissance drone.
Mr Trump initially appeared to play down the incident – but then apparently came the orders for a US retaliatory strike. That was followed by a last-minute change of heart.
The danger now is that Iran receives mixed messages that convey uncertainty and lack of resolve. This might encourage some in Tehran to push back at the Americans even harder.
There appears to be no diplomatic "off-ramp" in this crisis.
US economic sanctions are hitting home. Tehran is under pressure. Escalation remains an ever-present danger.
What happened with the drone?
Iran's Islamic Revolutionary Guard Corps (IRGC) announced its air force had shot down a US "spy" drone on Thursday morning after the unmanned aircraft violated Iranian airspace near Kuhmobarak in the southern province of Hormozgan.
IRGC commander-in-chief Maj-Gen Hossein Salami said the drone's downing was a "clear message" to the US that Iran's borders were "our red line".
However, US military officials maintain the drone was in international airspace over the Strait of Hormuz at the time.
The US Federal Aviation Administration (FAA) issued an emergency order on Thursday evening prohibiting US airlines from operating in an overwater area of Tehran-controlled airspace nearby in response.
Airlines from other countries, including Britain's British Airways, the Dutch carrier KLM, Emirates, and Qantas of Australia, have also said they will re-route their flights to avoid parts of Iran.
The shooting down of the drone followed accusations by the US that Iran had attacked two oil tankers with mines last Thursday just outside the Strait of Hormuz, in the Gulf of Oman.