KATHMANDU, March 3: In an interview with Reuters, Mr Obama also said the odds were still against such an agreement happening.
Israeli Prime Minister Benjamin Netanyahu is expected to oppose a deal in a speech to Congress on Tuesday.
But the president said Mr Netanyahu had been wrong on Iran before, when he opposed an interim agreement last year.
“Netanyahu made all sorts of claims – this was going to be a terrible deal, this was going to result in Iran getting $50bn worth of relief, Iran would not abide by the agreement.”
None of that has come true, Mr Obama said.
“During this period we’ve seen Iran not advance its programme. In many ways, it’s rolled back elements of its programme.”
Such differences of opinion between the US and Israel would not be “permanently destructive” to relations between the two countries, he added.
Mr Netanyahu was invited to speak at the US Capitol by Republican House Speaker John Boehner, a move that angered Democrats.
Analysis – Jeremy Bowen, BBC Middle East editor
Mr Netanyahu is due to be presented with a bust of Winston Churchill by the Republican speaker John Boehner, who controversially invited him to speak in Washington without discussing the matter with the White House.
The Israeli prime minister sees himself as Churchill’s heir, warning against Iran as Churchill warned against the Nazis.
But he’s also been accused of political calculation – helping out his Republican friends and making the speech part of his campaign in the Israeli general elections a fortnight from now.
The Obama administration is countering by pointing everything it does for Israel, from $20bn in military aid since President Obama was first elected to the use of the veto in the UN Security Council to protect Israel diplomatically.
The US, along with the UK, France, Germany, Russia and China, are seeking to reach agreement to curtail Iran’s nuclear programme in exchange for sanctions relief.
They are trying to address concerns that Iran is seeking nuclear weapons technology, something Tehran denies.
US Secretary of State John Kerry is holding talks with Iranian Foreign Minister Zarif in Switzerland as part of the ongoing negotiations ahead of a 31 March deadline for a framework agreement.
The aim is then to secure a final deal by 30 June.
Benjamin Netanyahu said his visit was not intended to “disrespect” Mr Obama.
John Kerry has been holding talks in Geneva with Iranian Foreign Minister Mohammad Javad Zarif.
Mr Obama said that if Iran was willing to agree to “double-digit years of keeping their programme where it is right now and, in fact, rolling back elements of it that currently exist… and we’ve got a way of verifying that, there’s no other steps we can take” to ensure Iran does not have nuclear arms.
The Israelis say any agreement that leaves Iran with a workable nuclear industry, now or in the future, is too dangerous.
“I have a moral obligation to speak up in the face of these dangers while there is still time to avert them,” Mr Netanyahu told the American Israel Public Affairs Committee (Aipac) conference in Washington on Monday.
Meanwhile, US national security adviser Susan Rice has warned Congress not to seek new sanctions against Iran while the talks with world powers are ongoing.
Senior White House adviser Susan Rice said Congress must not spoil Iran talks.
“Congress has played a hugely important role in helping to build our sanctions on Iran but they shouldn’t play the spoiler now,” she said in a speech to Aipac.
The leading Republican and Democrat on the House foreign relations committee have sent a letter to Mr Obama highlighting their concerns about a deal.
They said Congress must be convinced that any pathway Iran might have to developing a nuclear weapon is shut off before Congress considers easing sanctions.
Mr Obama said that while a deal was still unlikely, it would be better than the alternatives.
“If they do agree to it, it would be far more effective in controlling their nuclear programme than any military action we could take, any military action Israel could take, and far more effective than sanctions will be,” the US president told Reuters.
The US goal is to make sure “there’s at least a year between us seeing them try to get a nuclear weapon and them actually being able to obtain one,” he said.