Edward (Taylor Lindsey) is one of the oldest steam engines on the North Western Railway. He's a station pilot who's been arranging trains for the larger and newer engines since being taken out of service years ago. But when his driver, Charlie Sand (Michael Pine) and fireman, Sidney Hever (Kyle Guay) notice how depressed he's been, they give him the chance to pull a train once again. However, as Edward’s workload increases, the respect he is given by the railway’s pompous express engine, Gordon (Scott Lercher) decreases until Edward is reduced to nothing but a punching bag for the big engine.
Over time, many other things on the railway start to change. Unfortunately, they’re not for the better... Henry (Elijah Adams) defies the authority of the railway’s controller, Sir Topham Hatt, making the workload unbearable for other engines like Lily (Madison Rosa), leading to the need for a new station pilot, named Thomas (Cameron Bramley) to be acquired to help, and at the center of it all is the wicked rivalry between Edward and Gordon. But if the engines can’t resolve their problems in due time, the future of the railway and steam locomotives altogether will be at stake.