When the play opens, Valentine and Proteus (a.k.a. the two gentlemen of Verona) are in the middle of an emotional goodbye. You see, Valentine is leaving for Milan and his BFF is sad to see him go. Proteus would join him on his adventure, but he's in love with Julia so he's decided to stay home in Verona to be with her.
Meanwhile, Julia is hanging out with her woman in waiting, Lucetta. The two discuss which one of popular Julia's suitors is the dreamiest. Julia is partial to Proteus, but he's the only guy who hasn't proposed to her yet. As Julia wonders why that is, Lucetta whips out a letter from Proteus and hands it over to Julia, who pretends she's too modest to read it. After a silly little game of "I don't want to read it, send it back," Julia demands the love note and then tears it to shreds when Lucetta teases her. She immediately regrets it and tries to piece it back together.
Meanwhile, when Proteus's dad hears that people have been talking trash about him for not sending his son to travel abroad (that's what all the noblemen do, apparently), he decides to send Proteus to Milan, where he can become a well-rounded person (by going to jousts and hanging out with the children of other noblemen). Proteus tries to waffle – he was hoping to spend his summer going to the beach and hanging out at Dairy Queen with his girl Julia, but his dad won't let him wriggle out of traveling abroad. Proteus visits Julia one last time – they exchange rings and she cries. Then Proteus heads to Milan, where Valentine has been hanging out.
Speaking of Valentine…in Milan, he has met and fallen in love with the beautiful and sassy Silvia. Silvia treats Valentine like her "servant" and Valentine loves every minute of it. (That's how guys and girls flirt in "courtly romance" literature, which Shakespeare is, to some extent, making fun of here.)
When Proteus shows up, he promptly falls in love with Silvia, forgetting all about the girl he left back home. Then Proteus does something awful – he tattles on Valentine (who plans to elope with Silvia) to Silvia's protective father, the Duke of Milan. When the Duke approaches Valentine, a steamy lover letter to Silvia and a rope ladder fall out of the young man's jacket. (We're not sure how all that stuff fit in his coat.) The Duke says something like "Aha! You're planning to climb that ladder up to my daughter's bedroom. Get out of my sight." Ultimately, the Duke banishes Valentine from Milan – if Valentine shows his face in town ever again, he'll be put to death.
Meanwhile, back in Verona, Julia has decided she's going to travel to Milan to find her beloved Proteus. She dresses like a boy so she can travel without being accosted by any "lascivious men" who would try to ravish her. Julia gets gussied up in a pair of "breeches" (pants) and a fancy codpiece (what amounts to a decorative jockstrap) and heads to Milan, where she discovers her beloved Proteus…hitting on Silvia.
While this is happening, our boy Valentine is riding through a forest somewhere between Milan and Mantua when a band of outlaws pounce on him. Valentine lies about having killed a man and the outlaws are totally impressed. They decide he should be the Robin Hood to their band of merry thieves, so they invite him to be the leader of their forest dwelling gang. Valentine agrees to live with them in the forest but makes them promise not to hurt any "silly women" or helpless travelers.
Back in Milan, Julia is calling herself "Sebastian" and has landed a job as Proteus's errand boy. (Apparently, Julia wants to size up the competition in secret.) When Proteus sends "Sebastian" to deliver a ring to Silvia, "Sebastian" and Silvia get to talking. Silvia refuses to take the ring because she knows it once belonged to Julia. Julia admits to the audience that this is a good thing because she would have "scratched out" Silvia's eyes if she wasn't such a nice person.
Silvia is still in love with banished Valentine, so she convinces her good friend Eglamour to help her find him – the two run off to the forest, where Silvia is kidnapped by the outlaws, who proceed to take her to their leader, Valentine. (How convenient.) Meanwhile, the Duke has learned his daughter ran away and has organized a posse to track her down in the forest. Proteus tags along.
In the forest, Proteus catches up to Silvia and "rescues" her from the outlaws. He then tries to convince her that she should drop Valentine and get with him. When she refuses to love him, he tries to rape her. Before Proteus can assault Silvia, however, Valentine steps in and…yells at Proteus for betraying their friendship. (Yeah, we were sort of hoping Proteus would be punished for trying to rape Silvia, but no such luck.)
Proteus says he's sorry for being a lousy friend and Valentine says, "All that was mine in Silvia I give thee" (5.4). There are a few ways to read this but you'll have to go to "What's Up with the Ending?" if you want to know what we think…
Before Proteus can respond, "Sebastian" faints dramatically and then reveals that "he" is actually Julia. Proteus takes one look at his former girlfriend and falls back in love with her. Julia forgives Proteus and the two are engaged. The Duke, who has also arrived in the forest, decides that Valentine is a great guy after all, so he gives his daughter to him as a "gift." Valentine thinks this is just swell. (Apparently, Silvia does too, but we don't hear a peep out of her after Proteus's attempted rape.) Valentine suggests a double wedding is in order and the crew heads back to the Duke's place for a big reception.