Prime Minister Anthony Albanese announced the deal following a national cabinet meeting on Friday with premiers and chief ministers.
The five-year agreement, which will kick in from July, will see the federal government provide an extra $25 billion for public hospitals.
Mr Albanese said the deal would see more than $219 billion provided to public hospitals over the five-year period, which would be triple the amount of the last agreement.
"It is a major step forward in addressing the pressures that are there on our health and aged care systems, as well as on the NDIS, ensuring their sustainability into the future," the prime minister told reporters in Sydney on Friday.
"Under our federation system, what that requires is for the Commonwealth, together with states and territories, to work together in the interests of the respective states, but also in the national interest.
"That is what we have been provided for with this agreement."
Current funding arrangements run out at the end of June, but South Australia's election in March meant Friday's meeting was the last chance a deal could be struck before that state's government went into caretaker mode, putting negotiations between states on hold.
The Albanese government in December had offered $23 billion for public hospitals across five years, including $2 billion to help states manage elderly patients languishing in hospitals while they wait for aged care beds.
States and territories have insisted the federal government stick to a 2023 agreement that the Commonwealth would increase its share of public hospital funding to 42.5 per cent by 2030 and 45 per cent by 2035.