On the Greek island of Kalokairi, Sophie, a 20-year-old young woman, is preparing to marry her fiancé, Sky. She wants her father to walk her down the aisle, (Prologue: I Have a Dream) but doesn't know who he is. Sophie discovers her mother's old diary and finds entries which describe intimate dates with three men (Sam Carmichael, Bill Austin (Andersson in the film version), and Harry Bright) (Honey, Honey). Sophie believes that one of these men is her father and, three months prior to the wedding, sends each an invitation to her wedding writing in the name of her mother, Donna, without letting the unsuspecting mother know.
The day before the wedding, Donna begins receiving guests at her taverna. The first to arrive are her old best friends, Tanya, a rich woman who has been married and divorced three times, and Rosie, an unmarried, carefree woman. The trio used to be a girl group called Donna and the Dynamos. The three women catch up and talk about how their lives have been (Money, Money, Money).
Later that day, Sophie's three possible fathers arrive: Sam (an American architect), Harry (a British banker), and Bill (a Swedish writer and adventurer). Sophie convinces them not to tell Donna that she invited them (Thank You for the Music). Donna is surprised to see her ex-lovers (Mamma Mia) and leaves in tears. Donna, crying, explains to Tanya and Rosie the situation, and they cheer her up (Chiquitita). Tanya and Rosie try to convince Donna that she can still be the girl that she once was (Dancing Queen).
Sophie had hoped that she would know her father the moment she saw him, but is now only confused. She tries to tell her fiancé, Sky, how she feels without confessing what she has done. Sky tells her that he will be the only man she ever needs (Lay All Your Love on Me).
At Sophie's hen night, Donna and the Dynamos don their old costumes and perform a song, "Super Trouper". Sam, Bill and Harry accidentally walk in on the party, but the guests persuade them to stay (Gimme! Gimme! Gimme! (A Man After Midnight)). Sophie first pulls Sam out of the room to talk to him. After he asks why he is here, she is overcome with guilt, and goes to talk to Harry instead. But Harry asks if Sophie's father is at the party, and she tells him the whole truth. Lastly, she draws Bill aside to talk with him. She learns that Bill has an aunt Sophia who left all her money to Donna's family. Bill learns that Donna built the taverna with money she inherited from a friend she lived with when Sophie was a baby; that friend was Bill's aunt. They both think that this means he is her father.
Sophie asks Bill to walk her down the aisle, but Bill wants to discuss it first with Donna. This has been her secret, after all. But no one knows yet that even Donna does not know who the father is, because she slept with the three men in such swift succession. Sophie insists that they must not tell Donna anything (The Name of the Game) and finally, Bill agrees.
Afterward, everybody crashes the hen party (including the boys from the stag party). During the dance, Sam pulls Sophie aside and tells her that he has figured out why she invited him. He knows that he is her father, and promises to walk her down the aisle the next day. Then, Harry approaches Sophie, apologizing for being so slow on the uptake, and he is also convinced that she is his daughter and promises to walk her down the aisle. Sophie leaves the party, hopelessly confused; she doesn't want to turn any of them down (Voulez-Vous).
(Entr'acte) Sophie is having a nightmare, involving her three possible fathers all fighting for the right to walk her down the aisle and wakes up despairing (Under Attack).
Sophie is upset, and Donna assumes that Sophie wants to cancel the wedding and offers to handle all the details. Sophie is offended and vows that her children will not grow up not knowing who their father is. As Sophie storms out of the room, Sam enters and tries to tell Donna that Sophie may not be all she seems, but Donna will not listen (One of Us). She hates Sam; at the end of their affair, she said she never wanted to see him again. But it seems that Sam was the man Donna cared about the most, and both of them wish they could go back to the start (SOS).
At the beach, Harry asks Tanya what the father of the bride ought to be doing for Sophie's wedding. Tanya explains that for her part, her father gave her his advice and then paid. Pepper, one of the guys who works at Donna's taverna, makes advances to Tanya, but she rebuffs him (Does Your Mother Know).
Sky finds out what Sophie has done in inviting Sam, Harry and Bill to the wedding. He accuses her of wanting a big white wedding only so that she can find out who her father is. He is very hurt that she kept this plan a secret from him. He storms off just as Sam walks in. Sam tries to give Sophie some fatherly advice by describing his failed marriage (Knowing Me, Knowing You), but Sophie is not consoled.
Harry offers to Donna to pay for the wedding, and they reminisce about their fling (Our Last Summer). Sophie arrives and Donna helps her get dressed. She cannot believe her daughter is going to be a bride (Slipping Through My Fingers). Donna admits that her own mother disowned her when she learned that she was pregnant. They reconcile and Sophie asks her mother if she will walk her down the aisle. Sam arrives and tries to speak to Donna again, but she does not want to see him, and asks him to leave. He refuses, and a bitter confrontation ensues. Donna tells Sam that he broke her heart, presumably when she found out he was engaged (The Winner Takes It All). It emerges that the two still love each other dearly, albeit against Donna's better judgment.
Rosie is making final preparations in the taverna when Bill arrives. He's upset because he has received a note that Donna will be walking Sophie down the aisle. Bill reaffirms his commitment to the single life, but Rosie has become attracted to him, and urges him to reconsider (Take a Chance on Me). They are about to have sex in the taverna, but the guests arrive, leaving Rosie quite stunned.
The wedding begins, with Donna walking Sophie down the aisle. Before the priest has a chance to begin the ceremonies, Donna acknowledges to everyone that Sophie's father is present. Sophie tells her mother that she knows about her father. Donna realizes that Sophie invited them to the wedding for that very reason. The issue of Sophie's parentage is left unsettled, as none of them have any idea whether they are actually her father. Everyone involved agrees that it does not matter which one of them her biological parent is, as Sophie loves all three and they are all happy to be "one-third of a father" and a part of her life at last. Finally, Harry, who has made frequent references to his "other half" throughout the show, is revealed to be in a committed gay relationship with a man named Laurence (Nigel or George in some productions, Peter in the Russian version, José Francisco in the Mexican version and Adamastor Costa e Silva in the Brazilian Production).
Suddenly, Sophie calls a halt to the proceedings. She is not ready to get married and Sky agrees with Sophie about not getting married. Sam seizes his chance and proposes to Donna in order to prevent the wedding preparations from going to waste. He explains that he loved her, even when he left to get married. It is revealed that he called off the wedding with his fiancée and came back to the island, only to be told that Donna was going out with another man (Bill). He went back, married his fiancée and had children but he got divorced. Surprisingly, Donna accepts, (I Do, I Do, I Do, I Do, I Do). In the end, Sam and Donna are married, and at the end of the night, Sophie and Sky depart on a round-the-world tour (I Have A Dream) .
Finale and bonus
After the usual performers' bows to the audience, the cast performs the following songs together: "Dancing Queen", "Mamma Mia", and "Waterloo", featuring Donna, Tanya, Rosie, Sam, Bill, and Harry in ABBA-inspired costumes; they often invite the audience to sing along.