The 42-33 vote sends the bill to Christie's desk. The Republican governor who opposes gay marriage had promised "very swift action" if the bill passed both houses of the Legislature. The Senate approved the bill Monday.
"Today, the Legislature has brought us to the promised land," said Steven Goldstein, chairman of the gay rights group Garden State Equality. "We know the governor won't let us enter, but we finally behold the view of our dreams and we will never turn back."
Christie and most state Republican lawmakers want gay marriage put to a popular vote. Democrats say gay marriage is a civil right protected by the Constitution and not subject to referendum.
Six states and Washington, D.C. recognize gay marriages. Washington State's new gay marriage law is scheduled to take effect in June.
However, 30 states have adopted constitutional amendments aimed at preventing gay marriage, most by defining marriage as a union between man and woman.
The affirmative vote in the Assembly ended weeks of speculation over whether Democrats who control the chamber would muster the 41 votes needed for the measure to pass.
The Senate passed the bill 24-16. In that chamber, two Republicans voted for the bill and two Democrats voted against it in what was otherwise a party-line vote.
The bill would need several Republican votes in each house to override the governor; Christie himself essentially guaranteed that that won't happen.
With that in mind, Democrats who identified same-sex marriage as their No. 1 priority for the two-year legislative session that began in January have adopted a longer view. They say there's no rush for an override vote, especially because the Legislature has been unsuccessful in every prior attempt to override Christie, most notably to reinstate a surcharge on millionaires.
Instead, they plan to bide their time in hopes that support for gay marriage - currently 52-42 percent in New Jersey, according to one recent voter poll - will continue to grow.
"Civil rights is incremental, civil rights is long range, and you take one achievement at a time," said Steven Goldstein, head of the state's largest gay rights group, Garden State Equality.
In case same-sex couples can't win gay marriage through legislation, they have engaged in a parallel fight in the courts. Seven gay couples and several of their children have sued, claiming that the state's civil union law doesn't work as intended.
Civil unions were designed to provide the benefits of marriage to gay couples without the title. They were adopted after the Supreme Court instructed the Legislature to provide marriage equality to same-sex couples.
The state's own review commission has since found problems with the law, however, and many same-sex couples have backed that up with testimony before the Legislature.
Gay rights advocates say civil unions have not provided true equality. They complain that they set up a separate and inherently unequal classification for gays - something social conservatives dispute.
A gay marriage bill was defeated in the Senate two years ago, just before Gov. Jon Corzine, a Democrat who supported the measure, left office. Advocates' hopes dimmed with the arrival of Christie, a Republican who spoke against gay marriage when asked about it during his campaign.
This time around, advocates have presented gay marriage as a civil rights issue. The bill includes an exemption for religious leaders, institutions and facilities, meaning no one would be required to perform, host or lease space for a gay marriage.
Republican Sen. Kip Bateman of Somerset has taken a different approach. He recently drafted a resolution asking voters to approve gay marriage at the ballot. The resolution must be approved by the Legislature to be placed on the ballot in November, which Senate President Steve Sweeney has already said he won't allow.