Ohio's junior senator made the disclosure during an interview in Washington, The Cincinnati Enquirer reported.
"It's a change of heart from the position of a father," he told three reporters during a 45-minute session in his office. "I think we should be allowing gay couples the joy and stability of marriage."
He also outlined his position in an op-ed in the Columbus Dispatch.
As a member of the House in 1996, Portman voted in favor of the Defense of Marriage Act, which defines marriage as between a man and a woman and bars federal recognition of same-sex marriage.
Portman said Thursday his evolution on the subject of gay marriage began in 2011 when his son, Will, then a freshman at Yale University, told his parents he was gay. Portman said he and his wife, Jane, were very surprised but also supportive.
The Enquirer reported that Portman talked to his pastor and to people on both sides of the gay marriage issue, including Senate Minority Leader Mitch McConnell, R-Ky., who is opposed to gay marriage, and former Vice President Dick Cheney, who supports it. Cheney's daughter is a lesbian.
Portman told reporters his previous views on marriage were rooted in his Methodist faith.
Portman said Thursday he would like Congress to repeal the provision of the DOMA that bans federal recognition of gay marriage, though he still supports the part of the law that says states should not be forced to recognize such marriages.