Just before dawn in Seattle, a man in a car dons dark glasses, leather gloves and loads a 9mm silenced automatic handgun. He drives into town, where he shoots a policeman (Officer Philip Forsell; in the film the character is identified only as Hyatt) on his beat, then drives to a police impound yard and shoots the officer on duty (dialogue identifies him as Wally Johnson); the gunman then drops off the car at a dealership and sneaks away. At a luncheonette, as he washes his hands, he momentarily flashes a police badge owned by Detective Stan Boyle (William Bryant). When a car pulls up, Boyle goes outside and gives the driver a satchel containing the 9mm and proceeds to his own car – but is shot in the back by the unseen driver.

Seattle Police Department, and the head of the homicide investigation, Captain Edward Kosterman (Eddie Albert), believe the shootings are the work of street militants; Kosterman orders an immediate dragnet. Elsewhere, Detective Lieutenant Lon “McQ” McHugh (Wayne) escapes an attempt on his life by a professional hit man named Patty Samuels. McQ had been woken minutes before by a phone call to him on his boat, telling him of the shootings of his longtime partner and the two other police officers. Because he and Boyle had been investigating drug trafficking in the city, McQ is convinced from the start that the target of their investigation, local shipping magnate and suspected narcotics dealer Manny Santiago (Al Lettieri), is responsible for the shootings, a view hardened by the hitman’s attempt on him.

Despite a warning from Captain Kosterman to leave the investigation to the department, McQ, after talking with Boyle’s wife Lois (Diana Muldaur), begins tailing Santiago. After seeing a TV news report that Boyle has died of his injuries, he rages after Santiago and beats him viciously in a men’s room. When confined to desk duty by Kosterman, McQ angrily resigns, despite pleading from fellow detective Franklyn Toms (Clu Gulager).

Continuing to investigate the case through a partnership with local private eye “Pinky” Farrell (David Huddleston), McQ learns that Santiago has assembled a heist team to steal the confiscated heroin and cocaine from the police department’s evidence vault. The drugs are normally held by the department until turned over to the State Attorney General’s Office for disposal. Santiago’s men steal the drugs just as they are about to be burned in a hospital incinerator. McQ pursues Santiago’s men, but they escape. After getting a much harsher warning from the increasingly exasperated Kosterman, McQ is informed by Kosterman that the approval for McQ’s application for a private investigator’s license is being placed on hold. Kosterman relieves McQ of his Colt revolver. McQ goes to a local gun store and acquires for himself a Browning Hi-Power pistol and a MAC-10 submachine gun.

McQ breaks into Santiago’s office but is cornered by Santiago and his men. Santiago reveals that the drugs his men stole had turned out to be only powdered sugar. The real drugs, evidence in major and minor cases and investigations, was replaced over time with the sugar. Obviously this could only have been done by key corrupt members of the department. McQ also realizes that Santiago was not responsible for Boyle’s death. Knowing McQ is not a threat, Santiago lets him go, though he beats him brutally as payback for the earlier assault.

McQ’s investigation leads to the shooting of one of his sources, bartender Myra (Colleen Dewhurst), and another attempt on McQ’s life, in which his Firebird is crushed between two huge trucks. McQ escapes, but when he examines the wreckage, he finally discovers who is behind the police killings and the theft of drugs from the police, leading to a climactic chase and shootout at a beach with Santiago and his men.