Shasta lives in the south of the great empire of Calormen with a poor fisherman he calls father. One day, a Tarkaan (great lord) comes to their hut and offers to buy Shasta from the fisherman, saying that it is obvious they are not related. Shasta wishes he could ask the Tarkaan's horse what sort of man he is and is thinking this out loud when the horse speaks to him, telling Shasta that he is from the land of Narnia, to the north, where animals can talk. Shasta and the horse, who is called Bree, run away together.
On their way north, Bree and Shasta encounter Aravis, a girl from a noble family who is also running away from her home, riding a talking Narnian mare named Hwin.
Aravis tells the story of how and why she left home. Her father wanted to marry her to an elderly, powerful lord, whom she hates. The four agree to travel together, though Shasta dislikes Aravis. They reach the great city of Tashbaan, capital of Calormen and arrange to go through separately, in order to be less conspicuous, and meet at the Tombs of the Ancient Kings on the other side.
Shasta sees a royal delegation from Narnia in the streets of Tashbaan. Suddenly, one of them seizes him. It turns out that they have mistaken him for Prince Corin of Archenland, a member of their party who is missing and looks exactly like Shasta. They take Shasta back to the palace where they are staying.
The Narnians are in a difficult situation. Queen Susan of Narnia is supposed to marry Prince Rabadash of Calormen, but she has discovered what a harsh, tyrannical character he is and wishes to break the engagement. However, they are trapped in Calormen, surrounded by the soldiers of Rabadash's father, the Tisroc, ruler of Calormen. They decide to pretend to be preparing a feast on their royal barge, and to sail away surreptitiously. After they have made these plans, when Shasta is alone in the room, Prince Corin returns, and Shasta leaves.
Shasta waits for the others among the Tombs of the Ancient Kings. Eventually, he sees Bree and Hwin coming, but Aravis is not with them.
Aravis has encountered an old friend in Tashbaan, and her friend is helping her to escape through the royal palace when they hear the Tisroc himself coming and have to hide.
Aravis overhears the Tisroc planning to send Prince Rabadash in pursuit of the Narnians across the desert that divides Calormen from Archenland and Narnia. Rabadash not only intends to capture Queen Susan but to conquer Archenland.
Aravis escapes from the palace and is reunited with Shasta, Bree, and Hwin. They cross the desert to Archenland together.
Shasta, Aravis, Bree, and Hwin reach Archenland. Aravis, who has been attacked by a lion and wounded, stays with a hermit who lives near the border. The horses remain with her while Shasta goes to warn the King of Archenland that his country is under attack.
Shasta warns King Lune of Archenland about the attack. Afterwards, he meets the lion who wounded Aravis, who is Aslan, a talking lion and the High King above all kings in Narnia.
Shasta brings the Narnian army to the aid of the King of Archenland and is reunited with Prince Corin, his double.
The armies of Archenland and Narnia win the battle, and Prince Rabadash is captured. At the end of the battle, the King of Archenland places Shasta and Corin side by side and asks if anyone has any doubts. Shasta does not understand what this means.
At the hermit's dwelling, Aravis is recovering and is visited by the lion, who tells her that he wounded her because she caused one of her servants to be whipped when she escaped. Soon after this, Prince Cor of Archenland is announced. This turns out to be Shasta, who was Corin's long-lost brother and heir to the throne.
The King of Archenland agrees to free Prince Rabadash on certain conditions, but Rabadash will not even hear them. He behaves so churlishly that Aslan turns him into a donkey. He tells Rabadash that he can become human again if he returns to Tashbaan and never leaves, which prevents him from waging war again. Shasta (or Cor) and Aravis remain in the castle in Archenland, where they eventually marry, while Bree and Hwin go to Narnia.