The attackers sprayed bullets into a crowd of 500 to 600 supporters of the United National Party (UNP), marking the first major violence ahead of the August 17 parliamentary elections.
Police spokesman Ruwan Gunasekera said the gunmen had travelled in two vehicles and escaped in the same vehicles after the shooting spree.
"A woman was killed and 12 wounded persons have been admitted to the Colombo National hospital," he said.
Hospital sources said two of the victims were in a "very critical" condition.
There was no immediate claim of responsibility for the attack in Colombo.
Karunanayake blamed supporters of former strongman president Mahinda Rajapakse who is looking to stage a comeback at the polls.
The 52-year-old finance minister is one of the most senior members of the UNP, which backed his successor Maithripala Sirisena in January's presidential election.
He had initiated several investigations into alleged fraud by members of the Rajapakse regime.
But Rajapakse's United People's Freedom Alliance denied any involvement, alleging an "internal clash" within the ruling party.
Karunanayake said he was "seconds away" from the shooting although initial police reports said he had just left the area when gunmen got out of two vehicles and opened fire indiscriminately.
"I was seconds away -- or about 20 feet from the incident," Karunanayake told reporters in Colombo.
"This is nothing but an act of political terrorism sponsored by the opposition led by Rajapakse."
During his decade in power, Rajapakse was accused of presiding over an administration riddled with corruption and widespread rights abuses.
Panic and confusion
Karunanayake said the shooting had broken out while his supporters were lighting firecrackers, exacerbating the sense of panic and confusion.
"While the crackers were going off the four masked men got out of a black coloured car and opened fire," the minister said.
"People realised what had happened when several people started falling and were bleeding."
Police said investigators cordoned off the Bloemendhal area where the shooting took place and launched a search for the two getaway vehicles.
Prime Minister Ranil Wickremesinghe's deputy Harsha de Silva expressed shock and vowed not to allow a return to violence.
"I'm in shock and in disbelief at the shooting incident at Ravi's event," de Silva said on Twitter.
"No one will be allowed to reverse what we achieved on 8th January," he said, referring to Sirisena's presidential election triumph.
Soon after assuming office, Sirisena invited the UNP to form a minority government after sacking Rajapakse's cabinet.
Sirisena had been a supporter of Rajapakse and is the nominal leader of the former president's party even though the two men are now estranged.
Sri Lanka has a long history of political violence at election time.
President Ranasinghe Premadasa was killed in a suicide bomb attack during an election rally in 1993 while Chandrika Kumaratunga, another president, lost her right eye in a suicide bombing in 1999 during a re-election bid.
This year's campaign had been largely peaceful and local election monitors expressed surprise at Friday's shooting.
"We are puzzled by this latest turn of events in Colombo because so far it has been relatively calm and even the level of violence in other areas has been very low," said Keerthi Tennakoon, head of the Campaign for Free and Fair Elections (CaFFE).
CaFFE said there had been about 55 clashes since Sirisena dissolved parliament on June 26 and called elections a year ahead of schedule but this was the first armed incident.
There was no immediate response from a group of around 70 international observers.
Almost all previous elections have been marred by allegations that government workers colluded with the ruling party to give them an undue advantage.
Ahead of January's presidential poll, election chief Mahinda Deshapriya had ordered police to shoot anyone trying to disrupt the vote.
The presidential election passed off relatively peacefully, although one Sirisena supporter was killed in a drive-by shooting.
Get Breaking news, live coverage, and Latest News from India and around the world on NDTV.com. Catch all the Live TV action on NDTV 24x7 and NDTV India. Like us on Facebook or follow us on Twitter and Instagram for latest news and live news updates.