Ada Harris, a humble cleaning lady living in London in 1957, finds herself caught in a whirlwind of emotions and dreams that shape her journey. One night, on a bridge, she pauses with an unopened package addressed to her, pondering whether it contains good news or bad. She flips a coin, only for it to fall into the river, symbolizing her uncertain fate. The next morning, Ada catches a bus and shares her optimism with her friend Ellen Thomas. They both go to their jobs, cleaning the homes of wealthy clients like the charming yet superficial Mr. Newcombe and the disorganized actress Pamela Penrose.
After work, Ada and Vi visit a local bar, where they flirt with Archie, played by Jason Isaacs. Ada, feeling like an invisible woman, opens her latest package to find her husband Eddie’s wedding ring along with a note announcing he was declared killed in action after a crash near Warsaw. Heartbroken, Ada returns to the bridge and throws the ring into the river, letting go of her past and mourning her loss.
Ada’s work life brings her into contact with Lady Dant, a woman obsessed with status, played by Anna Chancellor. When Ada requests her unpaid wages, Lady Dant deflects her demands. While organizing her employer’s belongings, Ada becomes enchanted by a luxurious Dior dress valued at £500, which Lady Dant insists she keep secret from her husband. Inspired by her modest hopes, Ada begins to dream of owning such an elegant dress from Paris, betting on football matches to save enough money for one. She starts walking to her jobs to economize, asking her clients for referrals and dreaming of a new life.
One evening, Ada finds an expensive diamond clip on the street and responsibly returns it to the police. Her dedication gets her noticed, and she receives unexpected money from a military officer who confirms she is owed a war widow’s benefit, as well as a reward from the owner of the diamond clip. Archie offers her a chance to bet on dog races; she wagers on a dog named "Haute Couture" but loses her money. However, he later reveals he secretly placed a winning bet on her behalf, and her total savings reach over £580.
With her savings, Ada travels to Paris, determined to purchase her dream dress. She stays overnight at Gare du Nord amid a city suffering from a sanitation strike, with streets piled high with garbage. At Dior, she encounters a bustling scene of paparazzi, fashion shows, and high-society guests. Initially mistaken for a shopgirl, Ada impresses Madame Colbert, the Dior directress played by Isabelle Huppert, and is soon invited to a fashion event with Marquis de Chassagne, played by Lambert Wilson. She is eager to choose her perfect gown, but complications arise when the dress she desires is custom-made and takes two weeks to arrive.
While exploring Paris with Natasha, a young Dior employee eager to break free from being just a pretty face, Ada experiences the city's beauty firsthand. Natasha hopes to be seen as more than just a pretty face, and their friendship deepens as they discuss dreams and aspirations. Ada stays with Andre Fauvel, played by Lucas Bravo, a Dior accountant who is sympathetic to her hopes. He invites her to his sister’s apartment, and she quickly charms everyone there with her warmth and genuine kindness. Meanwhile, Ada encounters Claudine Colbert, the no-nonsense directress, who is initially dismissive when she finds Ada working as a seamstress in the atelier. Despite the tension, Claudine’s own story of taking care of her wounded husband reveals a softer side.
As Ada’s dress nears completion, she and Andre share moments along the Seine, discussing Dior’s financial struggles and potential solutions. They later stumble into a movie premiere, where Natasha is acting as the star’s companion, further highlighting the contrasting worlds Ada is beginning to traverse. Ada’s heartfelt kindness and resilience spark a change within the struggling maison, inspiring Dior staff to rally around her and implement new ideas proposed by Andre.
Meanwhile, Ada’s personal life takes a turn when she learns Natasha has left Dior and Paris, seeking her own destiny. Ada finds herself heartbroken but understanding. She later attends a special event at Dior, where her gown is finally finished, and she fully embraces her new confidence. She leaves Paris with a sense of achievement, but her journey continues as she returns to London.
Back home, Ada faces setbacks when her client Pamela Penrose accidentally sets her beloved Dior dress on fire, leaving her devastated. The damage symbolizes her sense of despair, leading her to toss the ruined dress into the Thames. Her emotional collapse prompts her friends Vi and Archie to support her during her lowest moments. Ada's encounter with Lady Dant reveals that the story of the fire has attracted media attention; Lady Dant mocks her, showing how little empathy she has.
In a heartfelt turn, Ada receives a surprise package accompanied by flowers. Inside, she finds a beautifully crafted, custom-made dress inspired by her dream gown, along with a note from the Dior staff—including Claudine, Christian Dior, Andre, the Marquis, and Natasha—expressing their admiration for her kindness and resilience. They explain that the recent difficulties, including the arrest of Madam Avallon’s husband for unpaid wages, indirectly helped revive the company. With renewed hope, Ada wears her new dress to a Royal British Legion dance, where she makes a stunning entrance and captures the attention of everyone, including Archie. Their dance signifies her reclaiming her dignity and happiness, ending her tumultuous journey on a note of hope and renewed faith in herself.