In Spain, a ranch owned by Moreno that trains bulls for bullfighting called Casa del Toro harbours a bull calf named Ferdinand. He is ridiculed by his fellow calves Bones, Guapo, and Valiente for being non-confrontational and his tendency to smell and protect flowers. A saddened Ferdinand runs away from Casa del Toro after his father Raf does not return from the bull fight he was picked for and a flower he was fond of was flattened by Valiente after his own father was defeated by Raf. He eventually winds up at a florist’s farm in Seville and is adopted by the owner Juan, his dog Paco, and his daughter Nina with whom he shares a bond, much to Paco’s jealousy.
When Ferdinand eventually grows up into an enormous bull, he still retains his non-violent, flower-loving nature. Due to his size, he is left alone when Juan, Nina, and Paco go to Ronda for an annual flower festival. Ferdinand decides to go anyway, resulting in him getting stung by a bee and unintentionally causing chaos around town and is taken away back to Casa del Toro, much to his and the family’s sadness.
Once back there, he finds that Bones, Guapo, and Valiente have also grown up and have been joined by a Scottish bull named Angus and a silent but intimidating bull named Maquina. Ferdinand is still disrespected by the bulls, but manages to befriend a crazy goat named Lupe who wants to be his coach in bullfighting despite his lack of interest and three hedgehogs named Una, Dos, and Quatro who frequently invade Casa del Toro to steal food. They used to have another brother named Tres, but they claim he is dead.
One day, a legendary but egotistical bullfighter named El Primero arrives at Casa del Toro to choose the biggest, strongest, and most aggressive bull to fight against before he retires. When the bulls fail to impress him on their first try, Guapo is taken to a nearby slaughterhouse and the other bulls tell Ferdinand that it will eventually be their fate if they are not chosen for a bullfight. Although Ferdinand manages to earn the respect of the other bulls, except Valiente, after a dance-off with three Austrian Lipzzans, they still hold on to the belief that fighting is the only way for them to live. Ferdinand manages to convince Lupe to come back with him to Nina’s farm and the hedgehogs help them escape, but when Ferdinand is close to freedom, he sees his father’s picture on a wall with his horns mounted, along with dozens of other horns, making him realize that every bull who is chosen to fight gets slain by the matador.
Ferdinand explains to the other bulls that they will all eventually be killed even if they are chosen to fight. Valiente is the only one unconvinced and charges Ferdinand outside where Ferdinand inadvertently beats him in a fight and knocks off his right horn, much to the other animals’ shock. Primero witnesses the scuffle, and chooses Ferdinand to fight him after seeing him defeat Valiente. When Valiente is taken to the slaughterhouse, Ferdinand rallies up the remaining bulls to escape but first goes to the slaughterhouse to break out Valiente. He at first refuses as he believes that the slaughterhouse is his fate now, but they discover that Guapo is still alive, and Ferdinand questions Valiente’s courage after Valiente refuses to help him rescue Guapo. When Ferdinand tries to save Guapo, he accidentally activates a series of deadly contraptions, but with the help of a now-friendlier Valiente, they escape the slaughterhouse. The bulls, Lupe, the hedgehogs, the rat, and a red bunny rabbit steal the training area’s company truck to escape, with Moreno and his employees giving chase.
The animals try desperately to lose the humans and wind up at Atocha train station in Madrid that Ferdinand sees as his ticket back to Nina. When the bulls push a small railroad cart to catch the train back to Nina’s home, Ferdinand sacrifices himself so the other bulls can escape (except for Lupe, who stays behind in shock after Ferdinand’s act) and is captured by Moreno and his employees. When Nina learns of Ferdinand’s upcoming fight with El Primero, she and Juan set out to Madrid to find and rescue Ferdinand.
At Las Ventas bullfight arena, Lupe tries to convince Ferdinand that he must fight in order to survive, but Ferdinand is silently unsure. When Ferdinand is released into the bullfight ring, he refuses to fight at first but is urged into fighting by El Primero. While being forced to run into Primero’s cape, Ferdinand is able to grab the cape from Primero with his horn and is temporarily blinded by it. Primero attempts to grab his cape back from Ferdinand, but is accidentally tossed out of the ring by Ferdinand. Primero re-enters the ring angrily and attacks Ferdinand using banderillas, striking him in the shoulder. Ferdinand almost retaliates against him, but sees a carnation underneath his hoof and realizes he is becoming the fighter he was determined not to be. As Primero draws his sword in order to finish Ferdinand, the crowd begins to cheer for Ferdinand, convincing Primero to spare him. Ferdinand is then reunited with Nina, who embraces him as the crowd throws carnations to the ring to praise the bull. The other bulls arrive, thinking they are too late to save Ferdinand, but instead witness Ferdinand making history as the first bull to ever make it out of a bullfight alive by being himself. Impressed, they sit to praise him for his efforts.
In the end, Ferdinand returns home with Nina, Juan, and Paco. They are joined by the other bulls, the hedgehogs, the bunny, and Lupe, who all move into the farm. The film ends with Ferdinand, his bull friends, and Lupe watching the sunset over Ronda from a field of flowers.
In a brief mid-credits scene, the hedgehogs are confronted by Tres who is revealed to have been alive the whole time.