William the Conqueror defeated King Harold in the Battle of Hastings in 1066, changing the way Englishmen would speak — and cuss — for all of time.
The mounted Norman soldiers attack Anglo Saxon infantry at the Battle of Hastings in "The Bayeux Tapestry."
The Normans marched to London and William was crowned king. Once he ascended, William declared French, his native language, the official language of the court. This left the Germanic language spoken by the Anglo-Saxons, Old English, as a "lower" language.
According to the Oxford Dictionary blog, this created a two-tiered language that evolved into modern English. Words for things connected to the ruling class, like large homes and prepared meat, drew from French. So noblemen lived in mansions and ate buef (beef)and porc (pork), while an Anglo-Saxon lived in hus (houses) and raised cus (cows) and picg (pigs).
When it came to the lowest and most vulgar of words, like those for poop, butts, and sex, the Old English words with German roots, scheisse, arsch, and ficken, became terms of profanity. It shouldn't be too hard to guess which words those evolved into.