The film opens with Brandon Teena (Hilary Swank) driving in the night. He is going with his cousin, Lonny (Matt McGrath), an older boy who is gay, to a skating rink. Lonny warns Brandon against behaving dangerously. Brandon ignores him and enters the rink, which seems magical to him. There Brandon meets with a girl. Later, we see them kissing outside her home, and Brandon chivalrously tells her he won't leave until he knows she is safely inside. But later, Brandon is chased by a group of young men, one of whom is related to the girl, and all of whom are yelling homosexual-related insults and threats. Brandon seeks protection in Lonny's trailer, and if the audience doesn't know it already, the conversation reveals that Brandon is actually a girl who wants to live as a boy. Lonny tells Brandon that he wants him to find somewhere else to stay. There are hints that Brandon is in trouble with the law and has been ostracized by his immediate family.
Later, Brandon seeks solace at a bar where he flirts with a girl named Candace (Alicia Goranson). He picks a fight with a large man who is hitting on Candace, and ends up getting hit several times. John Lotter (Peter Sarsgaard), a friend of Candace and her family, joins the fight, and flees with Brandon and Candace, with all laughing together in a nearby alley. Brandon is clearly energized by suddenly having allies. Brandon goes to Falls City, Nebraska, home of Candace, Lotter and another friend, Tom Nissen (Brendan Sexton III). Brandon stays at the home of Candace, who has a crush on Brandon.
Brandon hangs out with Lotter, Nissen and Candace, and through them meets Candace's sister, Lana Tisdel (Chloë Sevigny). He falls for Lana while watching her sing karaoke with her sisters. Lana is, at first, indifferent to Brandon's presence, though Brandon is clearly smitten.
Brandon loves his new life and new friends, but has not dealt with the legal issues back home. He misses an important court date, and carries the court