Germany will supply Ukraine with 14 Leopard 2 tanks and has given allies permission to send theirs too, despite threats from Russia.
The US has also confirmed it will send over 31 M1 Abrams tanks and provide training to the country's troops.
The move from Germany means other countries - such as Poland and Spain - which have stocks of the Leopard 2 tank and can now supply them to Kyiv.
Ukraine's President Volodymyr Zelenskyy has said he is "very happy" and "thankful" about the Leopard 2 decision - but warned the quantity and delivery time of the vehicles is "critical".
"This is not an offensive threat to Russia," US President Joe Biden told a news conference on Wednesday after confirming tanks would be sent.
He said the US and its allies "will continue to do all we can to support Ukraine," adding that Vladimir Putin "was wrong... we are united".
'Long-term commitment'
Mr Biden said armoured capability has been "critical for Ukraine" and the US "will train Ukrainian troops as soon as possible", adding that Germany has "really stepped up in support" of Mr Zelenskyy's troops.
The US earlier said it would provide the necessary training and supplies needed to operate and run its M1 Abrams tanks as part of its "long-term commitment that we have to Ukraine's defence leads", a senior administration official said.
"In addition to the Abrams we're also procuring eight M88 recovery vehicles," the official said.
It is understood the US military aid package is worth US$400 million (€366m).
The US decision was made in coordination with Germany, following diplomatic conversations between the two countries.
Mr Biden also held conversations with French President Emmanuel Macron, British Prime Minister Rishi Sunak and Italian Prime Minister Giogia Meloni on support for Ukraine on Wednesday morning.
'Closely coordinated'
On Tuesday Moscow warned Berlin that sending tanks "does not bode well for future relations" - and told the US that should it authorise such a move, it would be a "blatant provocation".
The Russian embassy in Berlin condemned Germany's decision as "extremely dangerous" and an "escalation" of the conflict "to a new level of confrontation".
Kyiv has been pleading for months for Western nations to send modern battle tanks to give its forces the firepower and mobility it hopes will break through Russian defensive lines and recapture territory occupied by Russia.
"This decision follows our well-known line of supporting Ukraine to the best of our ability," German Chancellor Olaf Scholz said in a statement on Wednesday. "We are acting in a closely coordinated manner internationally."
Addressing the German Bundestag, or parliament, he said there would be no ground troops or fighter jets sent to Ukraine.
Although Ukraine has stocks of Soviet-made tanks, President Zelenskyy says his forces need more, faster and deadlier weapons - in particular Western tanks - to push Russia back.
There had been a sense of frustration among some of Germany's allies about the delay in authorising the Leopards to go to Ukraine.
Recent opinion polls showed German voters split on the idea.
Polish Prime Minister Mateusz Morawiecki, who was among those critical of Germany's reluctance, welcomed the decision as a "big step towards stopping Russia".
First introduced in 1979, the Leopard 2 offers good protection against armour-piercing rounds and anti-tank guided weapons.
Berlin said it plans to swiftly begin training Ukrainian tank crews in Germany. The package being put together will also include logistics, ammunition and maintenance.
Reporting by: IRN