"four-wheeled vehicle to carry heavy loads," late 15c., from Middle Dutch wagen, waghen, from Proto-Germanic *wagna- (source also of Old English wægn, Modern English wain, Old Saxon and Old High German wagan, Old Norse vagn, Old Frisian wein, German Wagen), from PIE *wogh-no-, suffixed form of root *wegh- "to go, move, transport in a vehicle" (source also of Latin vehiculum). It is thus related to way.
In Dutch and German, it is the general word for "a wheel vehicle;" its use in English is a result of contact through Flemish immigration, Dutch trade, or the Continental wars. It has largely displaced the native cognate, wain. Spelling preference varied randomly between -g- and -gg- from mid-18c., until American English settled on the etymological wagon, while waggon remained common in Great Britain. Wagon-train is attested from 1810. Phrase on the wagon "abstaining from alcohol" is attested by 1904, originally on the water cart.