Cameron James (Joseph Gordon-Levitt), the new kid at Padua High School, is given a tour of the school by Michael Eckman (David Krumholtz), who is an audio-visual geek and former leader of a clique of future MBAs. Michael provides Cameron with information on the schools various cliques. During the tour, Cameron spots the beautiful and popular Bianca Stratford (Larisa Oleynik) and is immediately smitten with her. Michael warns that Bianca is shallow, conceited, and worst of all, not allowed to date. Michael does, however, inform Cameron that Bianca is looking for a French tutor.
At the Stratford residence, Biancas outcast older sister Kat (Julia Stiles) receives a letter of acceptance to Sarah Lawrence College. Her protective father, Walter (Larry Miller), is distraught by the news, as he wants Kat to attend college nearby. Kat distracts her father by revealing that Bianca was given a ride home from school by Joey Donner (Andrew Keegan). Bianca begs her father to allow her to date, but to no avail. Kat's aversion to dating prompts the father to come up with a new rule: Bianca can only date if Kat is dating.
Cameron starts tutoring Bianca, and she informs him of her fathers rule after Cameron makes many failed attempts to ask her out. This news motivates Cameron and Michael to set out to find a boy who is willing to date Kat.
Cameron suggests Patrick Verona (Heath Ledger), an outcast who is just as ill-tempered as Kat. Cameron tries asking Patrick for his assistance, but Patrick scares him off. Michael then poses the idea to Joey, also attempting to date Bianca, to pay Patrick to take Kat out. Patrick agrees, but Kat, however, wants nothing to do with Patrick. Cameron and Michael finally explain their situation to Patrick and inform him that Bogie Lowenstein (Kyle Cease) is throwing a party (this is actually a plot by Michael to get revenge, as a rumor from Bogie had got him kicked out of their clique). Cameron and Michael spread rumors around school that Bogie's party will have free beer and dancing, although it is actually a small private gathering.
At the party, Kat tells Joey to stay away from her sister. Joey brags that he cannot guarantee she'll stay away from him. Kat gets upset and begins drinking, leading her to dance drunkenly on a table. Meanwhile, Cameron discovers that Bianca was using him to find a date for Kat so that Bianca could date Joey.
Cameron decides to stop trying to date Bianca, but Patrick convinces him to go for it. Bianca asks Cameron for a ride home after discovering Joeys true character. Cameron drops her off and tells her that he really likes her and was very disappointed in her. At that point Bianca kisses Cameron. Patrick brings Kat home, and she drunkenly tries kissing Patrick. He suggests they should do that some other time, hurting Kats feelings.
The next day at school, Patrick publicly sings Can't Take My Eyes Off Of You to Kat in front of everyone asking her forgiveness, landing him in detention. Kat gets him out of detention by "flashing" the soccer coach. Kat and Patrick spend the day together, and they both realize that they truly do like each other. Patrick, motivated by Joey's bribe of $300, asks Kat to the prom. However, she is suspicious of his motives and they get into a fight.
Bianca tries to convince her father to let her go to the prom, but he refuses, since Kat isnt going. Bianca confronts Kat. Kat then reveals that she dated Joey and they had sex, mostly because everyone else was doing it. However, when Kat told Joey that she wasn't ready for sex and did not want to do it again, he immediately broke up with her. Even though she forbade Joey to tell anyone of their one time together or else she would tell all the cheerleaders how tiny he is, Kat still felt immense rejection, thus spurring her to not do anything ever again just because everyone else was doing it and distanced herself from her peers.
Bianca and Kat end up going to the prom with Cameron and Patrick. Joey is furious to learn that Bianca has gone to prom with Cameron, and confronts Patrick about the "arrangement" in front of Kat. Kat blows up at Patrick and leaves. Joey subsequently confronts Cameron about manipulating the 'deal' for himself, but after he punches Cameron, Bianca hits Joey three times herself, leaving him curled up in pain on the floor with a broken nose and a black eye.
The next morning, Bianca thanks Kat for going to prom and the sisters make up. Kat's father allows her to go to Sarah Lawrence. At school, Kat reads a poem which she wrote for English class, titled "10 Things I Hate About You" (written about Patrick). While reading the poem, she reveals (in front of the entire class) how hurt she was by what Patrick did and how much she really cares about him ("But mostly I hate the way I don't hate you. Not even close, not even a little bit, not even at all"). Patrick is shown to be touched by her revelation. In the parking lot, Kat finds a guitar Patrick bought her with the money Joey paid him, and he admits that he messed up their deal by falling for her. Kat forgives Patrick and the two kiss and make up.