AVA- The men struck with guns and explosives as people were attending Friday prayers in the eastern city of Gardez, Paktia province spokesman Abdullah Asrat said.
There are a number of children among the victims, he added.
The Taliban has denied it carried out the attack, and no other group has claimed responsibility.
The militant group ISIS has previously claimed responsibility for attacks on Shia mosques and other locations around Afghanistan.
It is under growing pressure from US air strikes and Afghan ground offensives. In many areas it is also fighting the Taliban.
Mr Asrat told the media the two men entered the mosque wearing full-face veils at about 13:30 local time.
They then opened fire on the worshippers, before one of the men was shot dead by security forces.
According to one eyewitness, the other assailant then made his way into a hall where people were hiding, and blew himself up.
Sayed Naimatullah, 30, heard the attack from his home, and rushed to the scene.
"The blood of the worshippers had painted the walls of the mosque... There were pieces of glass scattered all over," he told news agency AFP.
This is the latest in a series of attacks on cities across the country.
On Tuesday, at least 15 people were killed in an ISIS-claimed attack on a refugee office in Jalalabad, north-east of Gardez. On the same day 11 people were killed in the western province of Farah when a bus was hit by a roadside bomb in what was believed to be a Taliban attack.
The same day, 22 people were abducted by unknown assailants from vehicles on a highway linking Kabul and Gardez.
Nearly 1,700 civilians were killed in the first half of this year, the UN says, the highest total recorded for the period since counting began in 2009.