It passed on Thursday by a vote of 56-37. The Liberals voted in favour of it, while both opposition parties voted against it.
The Liberals had recently reintroduced the same $130.4-billion budget that spurred an election at the start of May.
The June 12 election turned the minority Liberals into a majority government.
That abrupt change in fortune spurred one Liberal MPP to yell "thanks for the election," during the vote on Thursday.
The Liberals had called an election after the New Democrats made it clear they would not support the budget. It was not going to be able to pass at that point because the Progressive Conservatives had also said they would vote against it.
The electionthat followed saw the Progressive Conservatives lose seats, while the New Democrats came away with the same seat total they had previously.
The opposition remain critical of the budget with the Tories warning that it will lead to a credit-rating downgrade and the New Democrats saying that its promises mask public-sector job cuts that are going to come at some point.