As the play begins, Valentine is preparing to leave Verona for Milan so as to broaden his horizons. He begs his best friend, Proteus, to come with him, but Proteus is in love with Julia, and refuses to leave. Disappointed, Valentine bids Proteus farewell and goes on alone. Meanwhile, Julia is discussing Proteus with her maid, Lucetta, who tells Julia that she thinks Proteus is fond of her. Julia, however, acts coyly, embarrassed to admit that she likes him. Lucetta then produces a letter; she will not say who gave it to her, but teases Julia that it was Valentine's servant, Speed, who brought it from Proteus. Julia, still unwilling to reveal her love in front of Lucetta, angrily tears up the letter. She sends Lucetta away, but then, realising her own rashness, she picks up the fragments of the letter and kisses them, trying to piece them back together.
Meanwhile, Proteus' father has decided that Proteus should travel to Milan and join Valentine. He orders that Proteus must leave the next day, prompting a tearful farewell with Julia, to whom Proteus swears eternal love. The two exchange rings and vows and Proteus promises to return as soon as he can.
In Milan, Proteus finds Valentine in love with the Duke's daughter, Silvia. Despite being in love with Julia, Proteus falls instantly in love with Silvia and vows to win her. Unaware of Proteus' feelings, Valentine tells him the Duke wants Silvia to marry the foppish but wealthy Thurio, against her wishes. Because the Duke suspects that his daughter and Valentine are in love, he locks her nightly in a tower, to which he keeps the only key. However, Valentine tells Proteus that he plans to free her by means of a corded ladder, and together, they will elope. Proteus immediately informs the Duke, who subsequently captures and banishes Valentine. While wandering outside Milan, Valentine runs afoul of a band of outlaws, who claim they are also exiled gentlemen. Valentine lies, saying he was banished for killing a man in a fair fight, and the outlaws elect him their leader.
Meanwhile, in Verona, Julia decides to join her lover in Milan. She convinces Lucetta to dress her in boy's clothes and help her fix her hair so she will not be harmed on the journey. Once in Milan, Julia quickly discovers Proteus' love for Silvia, watching him attempt to serenade her. She contrives to become his page-boy – Sebastian – until she can decide upon a course of action. Proteus sends Sebastian to Silvia with a gift of the same ring that Julia gave to him before he left Verona, but Julia learns that Silvia scorns Proteus' affections and is disgusted that he would forget about his love back home, i.e. Julia herself. Silvia deeply mourns the loss of Valentine, who Proteus has told her is rumoured dead.
Not persuaded of Valentine's death, Silvia determines to flee the city with the help of Sir Eglamour. They escape into the forest but when they are confronted by the outlaws, Eglamour flees and Silvia is taken captive. The outlaws head to their leader (Valentine), but on the way, they encounter Proteus and Julia (still disguised as Sebastian). Proteus rescues Silvia, and then pursues her deeper into the forest. Secretly observed by Valentine, Proteus attempts to persuade Silvia that he loves her, but she rejects his advances.
Proteus insinuates that he will rape her ("I'll force thee yield to my desire"), but at this point, Valentine intervenes and denounces Proteus. Horrified at what has happened, Proteus vows that the hate Valentine feels for him is nothing compared to the hate he feels for himself. Convinced that Proteus' repentance is genuine, Valentine forgives him and seems to offer Silvia to him. At this point, overwhelmed, Julia faints, revealing her true identity. Upon seeing her, Proteus suddenly remembers his love for her and vows fidelity to her once again. The Duke and Thurio are brought as prisoners by the outlaws. Seeing Silvia, Thurio claims her as his, but Valentine warns Thurio that if he makes one move toward her, he will kill him. Terrified, Thurio renounces Silvia. The Duke, disgusted with Thurio's cowardice and impressed by Valentine's actions, approves his and Silvia's love, and consents to their marriage. The two couples are happily united, and the Duke pardons the outlaws, telling them they may return to Milan.