Abhisit won by a 235-198 vote margin in the parliament's special session, called after months of public protest, Thai News Agency reported.
The protests were directed against the coalition government of Prime Minister Somchai Wongsawat and his predecessor, which was seen as a mere proxy for ousted Prime Minister Thaksin Shinawatra.
The TNA report said Abhisit defeated former national police chief Pracha Promnok, who was supported by lawmakers loyal to Thaksin, who lives in exile after being charges with corruption.
Abhisit holds a master's degree in economics from Oxford University, the report said. He first won in 1992 as a parliament member at age 28. He became party leader in 2005.
He has said national reconciliation and improving the country's economy would be his priorities. He says he is confident of restoring investor confidence in Thailand within two to three months of taking office.
The Bangkok Post reported the Democrat Party-led alliance kept its supporters in secure places before the vote to ensure they were not lured away by opponents.
The BBC said Abhisit will become Thailand's fifth prime minister in about two years.
A constitutional court ruling found the previous government of Somchai guilty of fraud in the December election, forcing it to resign. Somchai's coalition partners have regrouped under a new party.