Macdonald was born in Glasgow, and educated at the University of Glasgow, from which she graduated in 1972. She credits fellow Scot Ian Charleson with supporting and encouraging her to follow her theatrical aspirations, and she later contributed a chapter to the 1990 book, For Ian Charleson: A Tribute. Macdonald moved to London after university, and worked as an actress with the 84 Theatre Company and at the Royal Court Theatre. Although her acting career included 7 years of television work, she eventually left it, due in large part to stage fright.
While working as an actress, Macdonald wrote her first play, When I Was a Girl, I Used to Scream and Shout; it was first performed at the Bush Theatre in 1984, and won her the Evening Standard Award for most promising playwright. Some of the themes in Scream and Shout were inspired by games that her son, Caleb, played with his friends. Of this, Macdonald has said that "it's the result of a bet, this writing life. I was desperate for a second child. Desperate never to act again. Most of all desperate to stop eating lentils, French bread and tomatoes. We were broke, Will and me. We had one child. My hormones were screaming at me to have another. So. Will bet me a child for the sale of a script".
Her other work includes The Brave, commissioned by the Bush Theatre; When We Were Women, first performed at the Cottesloe Theatre; All Things Nice, commissioned by the English Stage Company and first performed at the Royal Court Theatre in 1991; The Winter Guest, which was made into a film, in 1997, directed by Alan Rickman; The Girl With Red Hair (2005), which had its first reading in August 2003; and Windfall a film adaptation of Penny Vincenzi's best-selling novel PiVotal Pictures.
She has written two plays for the National Theatre's Shell Connections programme; After Juliet (in which Macdonald's daughter starred as a young girl), and 2006's Broken Hallelujah.
Macdonald's resume also includes the novels The Beast (1986) and Night Night (1988), the radio plays (for the BBC) such as Sea Urchins and Gladly My Cross Eyed Bear (1999), and the libretto to Hey Persephone!, performed at Aldeburgh with music by Deirdre Gribbin.