48 Hours season 39 episode 2, Murder in the Parking Garage, is about the 2023 killing of Kenneth "Kenny" Fandrich, a 56-year-old Intel contractor. He was found dead in his car at a company parking garage in Hillsboro, Oregon. The case centers on a former veterinarian, Steven Milner, who had an affair with Fandrich's wife, Tanya, leading to years of stalking and harassment.
After the relationship ended, Milner became obsessed, violating protective orders and tracking the couple. On January 27, 2023, Fandrich was ambushed and killed by strangulation in the garage. The killer obscured the crime by wearing a mask, tinted glasses, and a hard hat, while spray-painting multiple security cameras with blue paint to disable them, as per CBS News.
To hide the crime, the perpetrator staged the scene to appear as a natural death, placing Fandrich's body and his belongings back in the car. The maroon minivan used in the attack was then abandoned on the side of Interstate 5, where it was later towed to a junkyard.
The 48 Hours season 39 episode 2, reported by Natalie Morales, aired on October 4, 2025, on CBS and is available for streaming on Paramount+.
48 Hours season 39: Background of the victim and suspect

Kenneth Fandrich was a contractor for Intel's Ronler Acres campus in Hillsboro, Oregon, as per the Washington County District Attorney’s Office. His life was made complicated after knowing about the extramarital affair of his wife, Tanya, with Steven Milner, an Oregon City veterinarian. Though Tanya ended the affair, Milner was not ready to let go.
Fandrich had a stalking protective order issued against Milner in March 2022 based on threats, one of which was a reference to cutting his body up, as per the district attorney’s office. Despite the order, Milner continued his actions, placing GPS tracking devices on the couple's vehicles and following Fandrich to work and home on multiple occasions.
Milner, who was 56 at the time of the crime, had retired from his veterinary practice. He purchased vehicles under false identities for surveillance, showing planning in his approach. On January 27, 2023, Fandrich arrived at work early, unaware that Milner was waiting for him.
After his shift, he was attacked from behind in a chokehold, suffering fatal injuries to his neck and spine. An autopsy the next day ruled out natural causes, confirming homicide.
Also read: 48 Hours: Where is Jermain Charlo? - A detailed case overview
Methods used to obscure the crime scene

The killer took steps to avoid detection during the attack. Early that morning, the perpetrator entered the Intel parking garage wearing a disguise: a face mask, tinted glasses, and a hard hat, items commonly used in a construction setting but used here to conceal their identity.
Security footage captured this figure approaching cameras near Fandrich's usual parking spot. The individual then sprayed blue paint over several lenses, disabling them to prevent clear recordings of the events, according to a report by CBS News.
However, not all footage was fully obscured; some cameras captured partial images before the paint covered them, providing investigators with initial leads. Milner had been prepared by buying a vehicle under a false name for surveillance, parking it nearby without drawing attention.
He monitored Fandrich's routine, waiting in the garage until the victim returned to his car after work. The ambush happened quickly, with the killer approaching from behind to apply a chokehold, as per the Washington County DA’s Office.
The disguise and camera tampering were key in delaying identification, allowing Milner time to leave the scene. The 48 Hours season 39 episode 2 details how these efforts, while thorough, left traces that the police later used.
Also read: Dateline: Secrets Uncovered, season 11 episode 15 - How did they identify the killer?
Strategies to hide the crime after the act shown in 48 Hours season 39

After the killing, the perpetrator attempted to make the death look non-suspicious. Fandrich's body was placed back in his car, along with his belongings, to suggest he had died from natural causes while sitting there. This staging aimed to delay any homicide investigation, as initial responders might assume a medical event.
The maroon minivan, which had been parked next to Fandrich's vehicle, was driven away from the garage shortly after, according to CBS News. To further distance himself from the crime, the killer abandoned the minivan on the side of Interstate 5 in North Portland a few days later.
The vehicle was towed and sent to a local junkyard, where it was scheduled for crushing as scrap metal. This move was intended to destroy any physical evidence inside, such as traces of paint, fibers, or DNA. Milner had used burner vehicles before, buying them anonymously to avoid links back to him.
However, an alert from the Oregon Department of Transportation notified police about the towed minivan, prompting a quick response. Detectives contacted the junkyard owner to halt processing the vehicle to preserve it for forensic analysis. However, by the time the detectives arrived at the scrapyard, the vehicle had already been crushed, as reported by CBS News.
Also read: Oxygen announces 4 new true crime titles for fall 2025: Here’s all you need to know
48 Hours season 39: The investigation and legal resolution

Hillsboro police arrived at the scene after Fandrich was found by coworkers. Intel provided footage from hundreds of cameras, revealing the disguised figure spray-painting lenses. Although partially obscured, the videos provided enough information to identify a suspect vehicle. Forensics also confirmed Fandrich's death was due to strangulation via autopsy, ruling out natural death.
Milner was arrested on January 31, 2023, and charged with second-degree murder, stalking, and violating protective orders. During his January 2025 trial in Washington County, he claimed self-defense, but witnesses, including Tanya, testified to years of harassment, according to the Washington County DA's office.
Evidence included GPS devices, surveillance videos, and vehicle purchases under false names. After deliberation, the jury convicted him on all counts on January 23, 2025. He received a life sentence on February 18, 2025, with a 25-year minimum before parole.
Also read: What happened to Monster: The Ed Gein Story's killer, and how did he die?
Watch 48 Hours season 39, available on CBS.