Zulpha Jacobs, 30, swaddled in black robes and head scarf, sat in the dock weeping as her plea and sentencing agreement were read out in court.
She confessed to killing Mogamat Taariq Jacobs in Mitchells Plain on December 29 last year and obstructing the ends of justice by falsely reporting his disappearance to police after the murder.
His body was found among bushes on dunes behind the Imperial Primary School in Beacon Valley, on December 31.
The court heard that Jacobs had separated from her husband and was staying with a friend, Shareen Damon in Beacon Valley, at the time.
On the morning in question, the little boy was crying because he wanted porridge. Jacobs shouted at him and told him there was no porridge.
Damon then heard her tell the boy: "I wish you can go out my life. You make my life miserable. Ek maak jou sommer vrek (I will just kill you)."
Jacobs and the boy left the house shortly afterwards and walked to the bushes near Riley road, where she knew she was going to kill him.
She then pushed his face into the sand until he stopped breathing and moving. Jacobs covered his body with a jacket and his feet with newspaper.
He was reported as missing at Mitchells Plain police station.
The mother sobbed loudly in court and rested her head on her arms.
Both Jacobs' family members and those of her estranged husband Walied Jacobs also broke down in court.
She was given 20 years in jail for the premeditated murder and two years for obstructing justice. The sentences will run concurrently.
The minimum sentence for the crime is normally life imprisonment, unless mitigating circumstances can be proven.
In determining the sentence, the court kept in mind that the little boy was defenceless and trusted his mother to keep him safe.
In Jacobs' favour was that she was young, a first offender and had no previous convictions. At the time of the murder, she was the primary caregiver and reliant on the goodwill of friends and family for the boy's care.
The State believed she was capable of rehabilitation and it was highly improbable that similar crimes would be committed in the future.
She killed the boy because she was overwhelmed by her situation and believed she would send the boy to a "better place".
Before Jacobs was led out, her defence team read out a letter she had written in which she apologised for her actions and taking the easy way out.
"I have not forgiven myself for hurting him... I hope you will find it in your heart to forgive me," she said in the letter.
She asked as a last wish that both families forgive each other and move on with their lives.
When the letter was finished, two policewomen lifted Jacobs' robes to chain her ankles and led her out the courtroom.