We first see psychologist Chris Kelvin (George Clooney) going through his daily routine, getting up in the morning, taking the train to work, and talking to his patients in their group therapy sessions. However, there is an underlying sadness about Chris, which we'll learn more about later.
One evening, Chris cuts his finger by accident in the kitchen while making dinner and washes the finger under the faucet and looks at the cut. (Important later on). He is then visited by two men who give him a video message from his friend, Dr. Gibarian (Ulrich Tukur), who has relayed this message from Prometheus, a space station in orbit around the planet Solaris. Solaris is an ocean planet that is being researched for its commercial or resource potential. Dr. Gibarian implores Chris to come to the space station, not explaining why exactly, but that something incredible has happened and that he has to come and see for himself. The two men explain to Chris that contact has been lost with the space station; an intervention team was sent and not heard from again. The government may abandon the station and the crew unless Chris travels up there to find out what happened.
Chris makes the trip to the space station and upon arrival finds it mostly empty. However, stains of blood are everywhere on the walls. He stumbles upon a makeshift morgue and is devastated to find Dr. Gibarian as one of two dead people on the slab. As Chris leaves the room, he fails to notice blood accumulating in the ceiling panels.
He proceeds to find only two survivors of the crew in the space station. The first is a young man named Snow (Jeremy Davies) who is EXTREMELY WEIRD, and only provides very vague and confusing answers. Chris learns that Dr. Gibarian committed suicide. Chris asks about doctor Coutard who was also supposed to be on board. Snow says the doctor was killed by an intervention team when he tried to escape from them. One other doctor has simply vanished; the only thing they know is that he is no longer aboard the station. Chris then proceeds to the other survivor, a woman named Dr. Gordon (Viola Davis). She has locked herself in her room because she is traumatized by what has happened to her and the others. Chris can hear another person stumbling inside her room, but she refuses to let him in. Both Snow and Gordon make it clear that discussing their issues is of no use unless the same things start happening to Kelvin.
A little boy suddenly runs around the corridor. Chris tries to catch up to boy but loses him. Dr. Snow tells him it is Dr. Gibarian's son. When asked how the boy could be on board, Snow remains vague, but implies that this is part of the problems everyone is experiencing.
Chris successfully coaxes Dr. Gordon out of her room and discusses her frail mental state, although she remains elusive about what caused it. Chris goes to bed and dreams about his wife, Rheya (Natascha McElhone), the time they first met, their courtship and making love to her. When Chris wakes up in the morning, Rheya is right beside him in bed. Chris jumps out of bed all freaked out. He asks how she got here, but Rheya doesn't seem to know what he means by that and continues to act as if they were still married. Chris realizes that Rheya cannot be real because Rheya has been dead for years. Chris tricks her into going into an escape pod and seals it shut. He sends her out to space and then breaks down crying.
Chris receives Snow, who explains that Solaris is responsible for all of this. The planet is somehow able to read the minds of the scientists during sleep, and conjures up a living facsimile of their most beloved. Snow himself got a visit from his brother. The boy they saw earlier was actually a replica of Gibarian's son who appeared out of nowhere. Snow tells Chris that Rheya will appear again if he wants her to.
The next night, Chris dreams about Rheya and in the morning, she's there in bed with him again. She is another copy and totally unaware of the first one. Chris asks her what she remembers and all she knows is her life with him. She has no clue how she arrived at the space station. Chris decides to let her stay with him, and tells Snow that the second Rheya may never know about what he did to the first.
In time, Rheya has thoughts of her own and begins to have doubts about who she really is. She has all the memories of her life with Chris, but they do not feel like they belong to her. To her distress, she starts to remember that she suffered from a bad childhood and depressions. When she got pregnant once, she had an abortion without telling Chris, who left her furiously. She then committed suicide.
All aboard have a meeting. They speculate how the planet creates these visitors from matter, and theorize how they could permanently dissolve them with a certain type of radiation. Against Gordon's judgement, Chris theorizes that Solaris is giving him a second chance with his wife, and he wants to take her home to Earth. Gordon thinks otherwise; more visitors could follow, some could go to Earth, and the effects may be devastating. She thinks that Rheya should be vaporized immediately, but Chris refuses and intends to carry on his relationship with Rheya. Gordon spills out to Rheya about the first copy of Rheya that Chris had sent out to space. Rheya is apalled and leaves. Chris is angered, but Gordon stresses that the visitors are not human, and that it is too dangerous to treat them as such.
That night, Chris has a dream in which he talks to Gibarian about the visitors. Gibarian implies that he communicates for Solaris. Chris wants to know what Solaris wants from them. Gibarian says that they cannot be sure, and the planet may not even have plans for them; there are no answers, only choices. Chris awakens, and finds Rheya missing. He searches for her and finds her lying on the floor: she has killed herself by drinking liquid oxygen, her face burned where it was in contact with the oxygen.
Chris brings her back to his bed where he, Gordon and Snow witness her facial wound suddenly healing itself. Gordon states that she hates watching "their resurrection". Rheya is distraught that she is alive again; she feels that she is not Rheya and therefore should not exist. There is a sudden power drain: Gordon has finished the special weapon and 'tested' it successfully on her visitor. Gordon warns Chris that Rheya will most likely try to kill herself again. Chris becomes determined to protect Rheya. He locks the door and starts taking pills to stay awake, in order to keep an eye on her.
Rheya tells Chris that he 'remembered her wrong'; she is depressed and suicidal because that is how Chris remembers her. However, Chris vows to Rheya that they can be happy together and start anew, despite her doubts. In spite of his efforts, Chris falls asleep, dreaming about the breakup with Rheya that led to her suicide from sleeping pills; Chris found her and blamed himself for her death. She left Chris' favorite poem as a suicide note. When Chris wakes up, he finds the door ripped open; Rheya has broken out and has asked Gordon to vaporize her, but not before leaving a goodbye video message for Chris: she states that she can never be the real Rheya, and that it is better this way; she found the suicide note from the real Rheya that Chris had brought with him from Earth, and left it for him to find, again.
Chris confronts Gordon in the makeshift morgue and gets angry at her for letting Rheya die; Gordon simply maintains that she only fulfilled Rheya's wish. Suddenly, they look up to the ceiling and see a large patch of blood. Chris opens up the ceiling tile and finds the body of doctor Snow, the cold having preserved the body. They both confront Snow and he admits to killing the doctor because it turns out that.... Snow himself is a visitor! He was the doctor's visitor and the doctor attempted to kill him within 30 seconds of his appearance, but the fake Snow didn't understand why or what was going on, killed the doctor in self-defense and stuffed his body in the ceiling.
Gordon advises to vaporize Snow immediately, however Snow warns them that since vaporizing the other visitors, Solaris has increased it mass and the vaporizing equipment has used up most of the station's energy. The entire space station begins to descend towards the planet Solaris. Snow tells Chris and Gordon to evacuate by an escape pod while he stays behind to meet his doom. Chris and Gordon suit up and head towards the escape pod, making preparations to leave.
We suddenly see Chris back on Earth, trying to resume his Earth life. He has no idea how long he has been back. While in his kitchen making dinner, he cuts his finger, like before, and rinses it out under the faucet. As he looks at the cut, it begins to heal itself and disappears. Chris suddenly remembers being back on the Prometheus, having second thoughts about escaping, and staying behind. Gordon goes off in the pod by herself as Chris turns back. As the Prometheus starts rocking, Chris is unable to stand on his feet and collapses to the floor. The little boy shows up, walks over and holds Chris' hand as Solaris comes closer.
Back in his kitchen, Chris looks up and sees Rheya standing before him. Chris asks her if he is alive or dead; she replies that those words no longer have any meaning, and that their regrets no longer matter, or words to that effect. They embrace as the camera zooms out on Solaris.
Now the question is: Is Chris dead and in heaven with Rheya? Or is he in Solaris with another copy of his wife? Or is she the real Rheya? Is Chris himself still real?