Lady Amelia Spencer, niece of Diana, Princess of Wales, has been cleared of all charges against her in a South African court, a spokesman for the country's authorities said.
The 18-year-old was accused of assault over an alleged fight outside a McDonald's in Cape Town.
The spokesman for the National Prosecuting Authority in the Western Cape said: "Charges against Lady Amelia Spencer have been withdrawn. When the case was postponed last time, it was so her lawyer could make representations, and these were successful."
Her co-accused, John Barbis, 24, will have to do 50 hours' community service with the Salvation Army in Johannesburg, the spokesman added.
The pair were accused of attacking Ricci Cinti, 27, in the drive-through area of the restaurant in Sea Point in the early hours of December 29.
The alleged victim was reportedly in a taxi which jumped a queue, sparking a stand-off with Lady Amelia and Barbis, who were in a Mini Cooper.
Lady Amelia was alleged to have tossed a cigarette at Mr Cinti who was on crutches after a football accident.
He supposedly suffered a jaw injury in the alleged assault when he said he was kicked and punched, and later went for a brain scan.
Lady Amelia's father, Earl Spencer, said: "Amelia has found it very tough, knowing she is not guilty, but having the charges against her trumpeted round the world, as if she were.
"Now she's been totally vindicated, and I'm thrilled for her."