South Africa's President Kgalema Motlanthe has announced that general elections will take place on 22 April.
The elections are set to be the most interesting since Nelson Mandela became president in 1994, ending white minority rule.
African National Congress (ANC) leader Jacob Zuma is the favourite to become president but he is beset by charges of corruption, which he denies.
A group of disillusioned ANC members left and formed a rival party in 2008.
The party was deeply divided between supporters of Mr Zuma and former President Thabo Mbeki.
Mr Mbeki was forced from power in September 2008 after a judge accused his government of interfering in the prosecution of Mr Zuma for political reasons.
However, an appeal court in January 2009 ruled that the first judge had been wrong to reach this conclusion.
But some of Mr Mbeki's supporters had already formed the Congress of the People (Cope), which analysts say could win enough votes to prevent the ANC from getting a two-thirds majority in parliament.
Mr Motlanthe was named president after Mr Mbeki stood down, as Mr Zuma was eligible, as he was not an MP.
"We believe that April 22 will be an appropriate date," President Motlanthe said, adding that the date had already been agreed with the electoral commission, reports the AFP news agency.
The elections were due before July.
However the Pretoria High Court has ruled that South Africans living abroad should be able to vote - a ruling which, if implemented, could lead to a delay in the elections.
Mr Zuma's corruption trial has been set for August. He has said he would only step down if convicted.