At long last, Marvel fans finally learned where that pesky Soul Stone was hiding in Avengers: Infinity War. Throughout the past decade of Marvel movies, the Soul Stone has remained the only Infinity Stone to never pop up, causing fans to develop a ton of theories about where the powerful gem could be hiding. It turns out, one Marvel hero actually knew all along, and Avengers: Infinity War revealed the Soul Stone's location when Thanos forced the information out. Oh, and all those theories we had about where the final Infinity Stone must be... yeah, those were way off.
Before we jump into where the Soul Stone has actually been hiding, let's have a refresher on all those Soul Stone theories that turned out to be false. A bunch of people were convinced that it would be in Wakanda, or that Heimdall had it, or even crazier, that it was a part of Tony Stark. But it turns out, the popular theory that came the closest to getting it right was the guess that the Soul Stone may be on Thanos' home world of Titan, even though that theory was off as well.
Spoiler alert: Obviously, spoilers for Avengers: Infinity War ahead. Actually, the Soul Stone was hiding away on another mysterious planet in a far-off galaxy, called Vormir, which had never before been mentioned in the Marvel Cinematic Universe. Although it is mentioned in the comics, Vormir is not really one of the major planets in the Marvel galaxy in print either, and there is nothing in the comics to suggest it would be tied to the Soul Stone, so I don't think anyone actually guessed that it would be the place where the final Infinity Stone would be hiding.
It turns out, Gamora actually knew that the Soul Stone was on Vormir all along. Back when she was still being raised by Thanos as his stepdaughter, the Mad Titan tasked Gamora with locating the Soul Stone. After finally working up the nerve to escape Thanos, Gamora resolves to never reveal the stone's location to him, even making Star Lord promise to kill her if Thanos tries to take her, so that she would die with the secret.
Sadly, though, Thanos has already obtained the Reality Stone by the time he stages his violent family reunion with his daughter and the rest of the Guardians of the Galaxy, and he is able to morph Star Lord's ray blaster into a harmless bubble gun before he can fulfill his promise of killing the captured Gamora. Things only get worse when Thanos forces Gamora to watch her sister Nebula be tortured until she finally reveals the location of the Soul Stone, which she eventually does.
Apparently, Gamora had found a map to the Soul Stone, but burned it in order to keep it hidden from Thanos. When she tells him that the final stone is on Vormir, he bringer her with him as they journey to the desolate planet. In the comic books, Vormir is inhabited by large lizard mutants called Vorms, but Infinity War shows no sign of life on the planet. What we do see is a very surprising return from the MCU past: Red Skull, the villain from Captain America: The First Avenger, greets Thanos and Gamora at a temple on Vormir, introducing himself a the Stonekeeper.
Red Skull reveals the task Thanos must complete in order to obtain the Soul Stone: "A soul for a soul." Basically, Thanos has to lose someone he truly loves in order for the Soul Stone to reveal itself. This delights Gamora at first, since she assumes Thanos never loved anyone, but then he tearfully kills her, revealing that he truly did love Gamora.
In the end, Thanos' sacrifice earns him the Soul Stone, although we don't really see him use it in the rest of the movie — except perhaps at the very end when he briefly speaks with Gamora as a child. Maybe we will see the Soul Stone's true power in upcoming Marvel movies.