A meeting between crime lord Chuckie Sol (Dick Miller) and his cronies starts one night in Gotham City. Sol is instructing his men about the procedure for laundering some new counterfeit bills through their casino when the meeting is interrupted by the Batman. Batman takes out Sols' followers but Chuckie manages to get to the parking garage.
Sol is greeted by a mysterious figure (who he first mistakes for Batman) stating the phrase "Your Angel of Death awaits." This mysterious Phantasm (voiced by Stacey Keach) is nearly run down by Sol's car, but tricks Sol into driving out a nearby window to his death. Batman arrives on the scene and observes Sol; the people below see Batman and assume he is responsible for what has happened.
Next morning, Councilman Arthur Reeves (Hart Bochner) is giving a press conference about Batman's apparent actions. He wants to hunt down Batman and arrest the vigilante. Commissioner James Gordon (Bob Hastings) is against it, since he doesn't believe Batman would do something like that. Detective Harvey Bullock (Robert Costanzo), on the other hand, is in favor of stopping Batman.
Alfred (Efrem Zimbalist Jr.) and Bruce (Kevin Conroy) are watching the presentation in the Batcave. Batman is analyzing a chemical found on the glass from Chuckie Sol's car.
Councilman Arthur is in his office, talking to a woman (Dana Delany) on the phone. She's flying into town after being gone for 10 years to settle some old finances.
During a party at Wayne Manor, Bruce confronts Arthur about his Batman stance. Arthur counters with some remarks about Bruce's love life, and mentions the name of one woman from Bruce's past- Andrea Beaumont.
Bruce confronts the portrait of his parents, flashing back to his memory of meeting Andrea in the graveyard while they both visited dead relatives (Andrea with her mother, Bruce with his parents). They both talk about how they miss their families. Bruce slyly mentions that he made a vow to his parents upon their death, and that "so far" he has kept it.
The night after meeting Andrea, Bruce goes out crime-fighting for the first time in his life. Decked out in a simple mask and street clothes, he confronts a group of thieves. Bruce is able to fend them off, but the thieves do not treat him as a serious threat.
Next morning, after bandaging his wounds, Bruce exercises while talking to Alfred. Bruce thinks that he failed to keep control of the situation because the criminals weren't afraid of him. Andrea arrives to speak with Bruce, and before long the two have begun a romantic relationship. The flashback ends and Bruce goes back out to the party.
Another Gotham crime lord, Buzz Bronski (John P. Ryan) visits the grave of Chuckie Sol. He hears the mysterious voice repeating "Your Angel of Death Awaits"- the Phantasm has come for Bronski. Phantasm kills Bronski by pushing a huge stone angel onto him. Buzz's bodyguards see a caped figure walking away from the scene and assume it is the Batman.
Elderly crime boss Salvatore Valestra (Abe Vigoda) reads the obituary of Buzz Bronski and the news story about Batman being thought responsible for the crimes. He is shocked at the news.
Arthur is now more fanatical than ever in his crusade against Batman. Commissioner Gordon vehemently refuses to participate, so Bullock eagerly steps up.
After Batman collects evidence at the scene of Buzz Bronski's murder, he takes a brief moment to reflect at the graveside of his parents. Andrea Beaumont is also in the graveyard; she spots a figure at the Wayne graves and automatically assumes that it is Bruce.
Andrea has dinner with Councilman Reeves, her mind distracted by what she saw that night. Batman observes her on stakeout. This triggers another flashback- Bruce takes Andrea to the Gotham World Fair, observing several prototype inventions- including a distinctive looking car. Andrea invites Bruce to come and meet her father, and he agrees. Bruce voices his discomfort to Alfred; his relationship with Andrea wasn't something he's planned on.
Bruce & Andrea greet Carl Beaumont, who is just finishing business with Arthur Reeves (Reeves works for Beaumont's legal department at this time). The meeting is interrupted by Valestra, who wants to speak with Carl. Both Bruce & Andrea are suspicious of Valestra.
Bruce spots a street merchant being robbed by a motorcycle gang. He goes after them, but his concern for Andrea distracts him and they get away.
That night, Bruce tries to design a costume for himself but cannot continue. Bruce knows that he can't complete the vow he made to his parents with someone like Andrea in his life. Bruce goes to his parents' grave site to try and justify his feelings. Andrea meets him and they go home together.
When a police helicopter approaches the nearby roof, Batman is brought out of his memory trip and returns home.
Next day, Councilman Reeves is approached by Valestra. Reeves confirms that Batman is apparently attacking "their people."
Using the Bat-Computer, Batman confirms that the two dead men- Sol & Bronski- were partners in phony dummy corporations set up at least 10 years ago. There was a third man involved- Sal Valestra. Batman goes off to confront Valestra. Alfred asks if Bruce will see Andrea when he is done.
In Valestra's office, Batman finds a photo of Carl Beaumont with Valestra and the two dead men. This triggers yet another flashback- Bruce proposes to Andrea and she happily accepts. They are interrupted by a huge swarm of bats coming from a cave below the house. Andrea returns to her father's house to see that some people have arrived to speak with Carl. She goes inside to tell her father the good news.
Bruce explores the cave and marvels at its huge size. When he returns, Alfred solemnly hands him a package. Andrea has returned Bruce's ring, stating only that she is leaving town and encouraging Bruce to forget her. Bruce, heartbroken, throws himself back into "The Plan." That very night, he dons the Batsuit for the first time. Alfred, seeing the transformation from Bruce to Batman, can only watch and remark "My God!"
Valestra goes to the now abandoned World Fair, which is a hideout for the Joker (Mark Hamil), who greets him like an old friend. Valestra tells him that he thinks Batman is killing off members of "the old gang." Joker notes that this is uncharacteristic behavior for Batman, and insists he is not a hired gun for the mob. Valestra reminds him that if the vigilante is specifically targeting his old associates, then its only a matter of time before they go after the Joker.
Andrea ends her date with Arthur, and finds Batman in her room. He asks about the men photographed with her father, but she tells him nothing. Denying any connection, Andrea states that Batman is the only one there who is still controlled by his parents.
The Phantasm comes to Valestra's apartment, only to find that Sal has been given a lethal dose of Joker toxin. Joker, watching from a hidden camera, is shocked to see that the killer isn't really Batman. The Phantasm narrowly escapes a bomb set by the Joker.
Batman confronts the Phantasm on the rooftop. A police helicopter confronts Batman, and Phantasm uses the chance to escape. Batman hides out in a construction site, but is soon able to trick the police into attacking a phony target (losing his cape & cowl in the process). Andrea drives up as Batman is fleeing and offers him a getaway vehicle. They elude the police.
Alfred bandages Bruce's wounds while he talks to Andrea. She tells Bruce about what happened the night he proposed. A flashback reveals that Carl Beaumont is begging for his life in front of Valestra's men. Andrea walks in, and her life is jeopardized too. Valestra gives Carl 24 hours to return the money that was embezzled or Carl will die. Andrea opposes her fathers actions and does not wish to run, but Carl insists that there is no hope for them in Gotham.
In the present, Andrea tells Bruce that her father was eventually able to pay off his debt, but Valestra's men considered it too little, too late. Bruce thinks that the man in the Phantasm costume is Carl- killing off the gangsters to finally be free of his debt. Bruce & Andrea are obviously still in love, but Bruce states that he still has to stop the Phantasm.
Bruce looks at the photo he took from Valestra again. He recognizes the features on one man, and-after an alteration with red ink- confirms that Valestra's former bodyguard is actually The Joker!
Councilman Reeves is furious that Batman escaped. The Joker confronts Reeves and talks about what's been happening, mentioning that someone other than Batman is responsible for the killings. Joker doses Reeves with his laughing toxin, and Arthur is hospitalized in a hysterical laughing fit.
Batman confronts Reeves that night, confirming the details about Reeve's connection to the Beaumonts. Arthur kept in touch with Carl while he was abroad, helping to set up funds. But when Reeves asked Carl for help in financing an election, Carl refused. So, desperate for funds, Arthur sold Carl out to Valestra's mob.
Batman searches Andrea's apartment for more clues, finding a locket with a picture of Andrea & himself inside. The phone rings and Batman answers it- it's the Joker, sending another bomb into the apartment. Batman manages to escape and recognizes the design of the plane that flew in the bomb. He deduces that Joker is hiding out in the ruins of the Gotham World Fair.
In a final flashback, Andrea returns to her father's new home after some grocery shopping, only to find Valestra's bodyguard emerging. Fearing the worst, she drops the grocery bags and runs. As Andrea screams in horror, the future Joker grabs an apple out of the discarded grocery bags, then casually walks away.
Phantasm confronts Joker, and Joker applauds the Phantasm's scheme. Phantasm is revealed to be Andrea Beaumont, out for revenge against her father's murderers. Batman arrives and confronts Andrea, who states that vengeance is now all that she has left. Batman and Joker fight, eventually triggering a fire in the World's Fair props. Andrea grabs Joker, vowing that her crusade will end no matter what. She disappears in an explosion, but Batman manages to get away.
In the Batcave, Bruce regrets not being able to save Andrea. Alfred states that it is quite possible Andrea didn't want to be saved. A glimmer in the cave attracts Bruce's attention- he finds the same locket from Andrea's apartment.
Out on a cruise, Andrea gazes out at the sea, truly alone in the world.