Mark Hunter (Christian Slater) is an intelligent but shy teenager who has just moved to Arizona from the East Coast. Mark has inner demons he has a hard time dealing with. Mark's father, Brian Hunter (Scott Paulin), who runs the school district, and his mother, Marla Hunter (Mimi Kennedy), try to help him but only push him away.
His parents give him a short-wave radio so he can talk to his pals back east, but instead he sets up shop as angry pirate deejay Hard Harry. His broadcasts consist of music, obscenity, cynical observations, reading letters, and call-ins. His listeners include students of Hubert Humphrey high school, and a teacher, Ms. Emerson (Ellen Greene).
The school is run by corrupt principal Loretta Creswood (Annie Ross), who weeds out underachieving kids to keep the school's SAT scores high as false testimony to her competence. By exposing hard truths, Harry becomes a reluctant hero to all the students in the school.
Nora Diniro (Samantha Mathis), whose letters to Harry's show have been read on the air many times, learns his real identity but keeps his secret. Harry and Nora awkwardly form a tentative relationship.
Caller Malcolm Kaiser (Anthony Luke Lucero) wants to commit suicide and Harry does little to talk him out of it. When Malcolm actually kills himself, Harry feels bad that he didn't do anything to help him. He talks openly to his audience about being a teenager and suicidal feelings.
Due to Malcolm's death and Harry-inspired chaos breaking out at the school, the FCC is called in to shut down the station. As they get closer to discovering his location, Harry loads his transmitter into a vehicle and continues to broadcast on the move.
Harry's dad finally learns from Ms. Emerson about Miss Creswood's shady actions, and suspends her.
When the FCC rolls up to arrest Harry and take him away, he tells his listeners not to give up, to live, and to "talk hard". Inspired by his example to tell the truth no matter how ugly it is, some students start their own pirate radio stations.