Greece has become the first Christian Orthodox-majority country to legalise same-sex marriage.
Same-sex couples will now also be legally allowed to adopt children after Thursday's 176-76 vote in parliament.
Prime Minister Kyriakos Mitsotakis said the new law would "boldly abolish a serious inequality".
But it has divided the country, with fierce resistance led by the powerful Orthodox Church. Its supporters held a protest rally in Athens.
Many displayed banners, held crosses, read prayers and sang passages from the Bible in the capital's Syntagma Square.
The head of the Orthodox Church, Archbishop Ieronymos, said the measure would "corrupt the homeland's social cohesion".
The bill needed a simple majority to pass through the 300-member parliament.
Mr Mitsotakis had championed the bill but required the support of opposition parties to get it over the line, with dozens of MPs from his centre-right governing party opposed.
"People who have been invisible will finally be made visible around us, and with them, many children will finally find their rightful place," the prime minister told parliament during a debate ahead of the vote.
"The reform makes the lives of several of our fellow citizens better, without taking away anything from the lives of the many."
The vote has been welcomed by LGBTQ organisations in Greece.
"This is a historic moment," Stella Belia, the head of same-sex parents' group Rainbow Families, told Reuters news agency. "This is a day of joy."
Fifteen of the European Union's 27 members have already legalised same-sex marriage. It is permitted in 35 countries worldwide.
Greece has until now lagged behind some of its European neighbours, largely because of opposition from the Church.
It is the first country in south-eastern Europe to have marriage equality.