It is October 1969. Frank Sullivan is a New York City firefighter, and a devoted husband and father. His wife, Julia, is a nurse who works at a local hospital. His son, John, is six years old; Frank calls him Little Chief. They share a passion for baseball, especially the Amazing Mets, and plan to watch the 1969 World Series together on TV. Frank's best friend is an African-American cop named Satch; John's is a boy his own age named Gordo. When not fighting fires and spending time with his family, Frank's hobby is ham radio.
Fast-forward to October 1999. John is now a New York City policeman; Satch is either his supervisor or his partner. Gordo is still his best friend, but is now married. John is still single, and his girlfriend, Samantha, has just walked out on him. He still lives in the family home in Queens; his mother lives nearby and still works as a nurse, but his father has been dead for 30 years, killed while fighting a warehouse fire. The thirtieth anniversary of that tragedy is coming up, and Julie, Satch, and Gordo are all aware of how hard that is on John.
John and Satch are currently occupied with a case called the Nightingale murders, where three nurses were murdered by a serial killer in 1968 and 1969. The case was never solved, but one of the bodies has just been found, and the investigation has been reopened. As part of the investigation, John visits and interviews an elderly couple, Mr. and Mrs. Sheppard, who live near where the body was discovered. Mrs. Sheppard is a retired nurse. Mr. & Mrs. Sheppard had a son, named Jack. Jack was a New York City Detective. 30 years ago, Jack died at a hospital.
While Gordo and his family are visiting, they find Frank's old ham radio and set it up. After Gordo and crew leave, John begins to try out the radio, and through a strange atmospheric phenomenon, contacts his father thirty years in the past. Both are skeptical at first; John thinks it is Gordo playing a joke, while Frank thinks it is someone planning to do his family harm and becomes somewhat angry. John is the first to realize that he is actually talking to his father through time, and tries unsuccessfully to convince him. In the process, he describes the outcome of the first World Series game, which in Frank's time is to take place the next day. He also warns him that he is about to die in a warehouse fire, gives the name of the warehouse, and tells him that he died because he followed his instincts, but if he had gone the other way he would have made it.
Afterwards, Frank remains skeptical, but he can't help but notice the next day that the World Series game goes exactly as the man purporting to be his son said it would. Then he is called to a fire, and it turns out to be exactly the same warehouse in which the man purporting to be his son said he died. Trapped on the top floor of the inferno, he is trying to take what seems to be the only sensible escape route, when he remembers John's words that if he had gone the other way he would have made it. He turns around and goes the opposite way, and survives.
Back in 1999, John is out drinking with Satch and Gordo, who are trying to help him get through the difficult thirtieth anniversary. John begins to have a muddle of conflicting memories, including those of later childhood and adolescence and even his early years on the police force, with his father there. He tells his friends, as though realizing it for the first time (which he is), that his father didn't die in a fire. They look at him incredulously; they all know that Frank died of lung cancer just ten years ago in 1989.
John discovers that he has two sets of memories. He can remember life with his father subsequent to the fire, but he also remembers what life was like when he believed that his father had been killed thirty years before. This is not true of anyone else. Satch and Gordo, for example, have changed instantly, suddenly having no recollection of Frank having died in a fire; it is as though they have always known that he lived another twenty years and died ten years ago.
Later that evening, John makes contact with his father again. This time there is no skepticism on Frank's part, and they spend some time getting reacquainted. Later, Frank, excited just to be alive, visits Julia at the hospital. While they are talking, she spots the doctor about to administer medication to a patient to whom she had given different medication earlier, points out his error, and Julia saves Jack Sheppard's life.
That night (in 1999), John is haunted by still another set of new memories, this time of attending a funeral with his father, without his mother. The next day he discovers that his mother simply does not exist anymore. At work, the Nightingale case suddenly involves ten victims instead of three (Satch cannot understand why John would think it had ever been just three), and John discovers to his horror that one of the victims was his mother. Julia was the sixth woman, who got killed by the Nightingale Killer.
John tells Frank that Julia died 30 years ago. Since Julia was working at the hospital last night, John says that Julia wasn't supposed to be at the hospital last night. If Frank died in the Warehouse fire last night, then Julia wouldn't have been at the hospital last night.
John says, "Dad, you need to stop the Nightingale Killer from killing the other women including mom."
Their hope is that Frank, armed with details of each murder before it happens, will be able to prevent the murders and catch the killer. John gives Frank the information about the 4th woman/victim, who got killed by the Nightingale Killer. Frank goes to a bar, strikes up a conversation with the 4th victim and effectively keeps her from leaving & it means that the 4th victim doesn't die.
John realizes that the Nightingale Killer killed 9 women only.
John gives Frank the information about the 4th woman, who got killed by the Nightingale Killer. The 5th victim's in a bar. Frank's also at the same bar. While Frank's in the bathroom, Jack comes into the bathroom & Jack attacks Frank. Frank doesn't know that the man's name is Jack Sheppard. It's revealed that the Nightingale Killer's Jack. Jack knocks out Frank. Jack steals Frank's license. When Frank wakes up, Frank goes to the 5th victim's apartment & Frank realizes that the woman's dead.
Frank explains to John what has happened, and John tells him to hide the wallet in a place where it won't be discovered for thirty years. As soon as Frank hides it, John retrieves it. Later he is able to match the fingerprints with Jack Sheppard. John doesn't tell anyone that the Nightingale Killer's none other than Jack Sheppard.
If Frank died in the warehouse fire 30 years ago, then Julia would've left the hospital and Jack would've died at the hospital. If Jack died at the hospital, then Jack wouldn't have been able to kill more than three women. Since Frank didn't die in the warehouse fire, Julia stayed at the hospital and Julia saved Jack's life. Even though Frank didn't die in the warehouse fire, John wishes that Jack still died at the hospital.
John pays another visit to the Sheppards. Mr. Shepard is alive. Mrs. Sheppard was murdered by the Nightingale Killer 30 years ago. Mrs. Sheppard was the last woman, who got killed by the Nightingale Killer. Jack doing private investigation, having left the police force after being involved with some corruption. John finds the present-day Jack Shepard in a bar, and tells him cryptically that he is going down, thirty years ago.
When John tells Frank that the Nightingale Killer's Jack Sheppard, Satch shows up at Frank's house in 1969. Satch tells Frank that Frank's license was at the Nightingale Killer's 4th victim's apartment. Satch reluctantly arrests Frank for the Killer's 4th victim's murder. When Frank & Satch are inside the Interrogation Room, Satch doesn't believe that Frank was using his ham radio to contact John who's in the Future. Frank predicts some details of the current game which is part of 1969 World Series. Satch leaves Frank in his cell and goes to talk to Julia. Satch & Julia go to another place where people drink coffee. Frank's shocked when Jack enters the Interrogation Room. When Satch's partner enters the Interrogation Room, Jack & Satch's partner leave the Interrogation Room. Satch's partner is wondering why Jack entered the Interrogation Room. Jack says, "I entered the Interrogation Room because I thought that you needed some help." Frank plans to electrocute Jack when Jack comes back to the Interrogation Room.
When Jack returns, Frank electrocutes Jack. Jack's unconscious. Frank also knocking out all the electricity in the police station. Frank then starts a fire which activates the building's sprinkler system. Frank steals Jack's license. As everyone flees the building, and with Jack lying face-down in a pool of water, Frank is able to calmly leave the cell. Jack never closed the door. Frank steals the file that has evidence against Frank. Frank calmly leaves the Police Station. Satch says, "Frank's saying that he was using his radio to contact John who's in the Future." Julia doesn't believe that Frank was using his radio to contact John, who's in the Future. Satch sees the Current 1969 World Series Game going exactly as Frank predicted it would.
Frank breaks into Jack's apartment. Inside Jack's apartment, Frank discovers pictures of the Nightingale victims & Frank also discovers jewelry that belongs to the Nightingale Victims. Jack comes back to his apartment. When Jack sees Frank, Jack tries to shoot Frank but Frank manages to escape. While Jack's chasing Frank, Satch & his partner go to Jack's apartment. Satch & his partner discover the pictures & jewelry of the Nightingale Victims. Jack chases Frank to the waterfront. At the waterfront, Frank surprises Jack. Frank wants to drown Jack. When Frank gets out of the water, Satch & Satch's partner show up. They're unable to find Jack's dead body. Frank, Satch, & the other people still believe that Jack's dead.
Back at home, Frank contacts John again. Frank tells John that Jack died, but Julia still died in 1969. Unfortunately, a mysterious man knocks out John. It's revealed that John was knocked out by Jack. In 1969, Jack must've figured out that someone in the future gave Frank the information about the Nightingale Murders. Before Jack knocked out John, Jack realized that Frank's wife gave birth to John & Jack also realized that John gave Frank the information about the Nightingale Murders. Jack knocks out Frank. Jack handcuffs Frank. Jack is holding a gun & Jack throws away John's gun. John wakes up & John gets into a wrestling match with Jack. Jack sneaks into Julia's room. Julia wakes up, but Jack tries to strangle Julia. When Frank wakes up, Frank hears Julia's voice & Frank realizes that Jack's still alive. Frank frees himself. When John sees Jack in Julia's room, Jack knocks out Julia.
Frank owns a shotgun. When Frank grabs his shotgun, Frank sees Jack holding John as a hostage.
Jack says, "If you drop your weapon, then I'll let go of your son."
When Jack grabs John's gun, Jack is about to kill John. Frank drops his shotgun. Few seconds later, Julia jumps onto Jack & Jack lets go of John. Jack pushes Julia & Julia falls onto the ground. When Frank grabs his shotgun, Frank shoots Jack's right hand. Jack's right hand gets blown off & Jack leaves Frank's house. When Jack's using his right hand to choke John, Jack's right hand disappears. While Jack's hand's disappearing, Jack backs away in horror, but Jack still keeps John's gun pointed at John. After Jack's hand disappears, Jack sees Frank holding his shotgun. Jack's about to shoot Frank, but Frank shoots Jack in self-defense. Jack's dead. John realizes that Frank's alive because Frank stopped smoking 30 years ago. Father Frank and son John, now both in 1999, joyfully have the first hug of their reunion.
The movie ends with John and Frank (in 1999) playing baseball together as Julia looks on. Since Frank stopped smoking 30 years ago, something prevented John's girlfriend from breaking up with John. John's wife gave birth to a boy. John's son's age is between 3 & 10.