MPs in the French National Assembly have voted in favour of same-sex marriage and adoption - after more than 100 hours of debate.
The bill passed by 329 votes to 229 last night and will now head to the Left-controlled Senate for April.
It has been described by President Hollande's government as the biggest social reform since the death penalty was abolished 32 years ago, and was one of the president's key campaign pledges.
If passed, France will join Britain and 11 other countries including Spain and the Netherlands to recognise marriage between gay people.
MPs ploughed through more than 5,000 amendments put forward by the conservative opposition to delay the bill.
Recent surveys suggest the majority of French voters are in favour of gay marriage, but less than half believe same-sex couples should be allowed to adopt children.
Hundreds of thousands of campaigners - for and against - took part in demonstrations in Paris and other French towns and cities in recent weeks.