Middle English slēn, from Old English slean "to smite, strike, beat," also "to kill with a weapon, slaughter" (class VI strong verb; past tense sloh, slog, past participle slagen), from Proto-Germanic *slahanan "to hit" (source also of Old Norse and Old Frisian sla, Danish slaa, Middle Dutch slaen, Dutch slaan, Old High German slahan, German schlagen, Gothic slahan "to strike"). The Germanic words are said to be from PIE root *slak- "to strike" (source also of Middle Irish past participle slactha "struck," slacc "sword"), but, given certain phonetic difficulties and that the only cognates are Celtic, Boutkan says the evidences "point to a North European substratum word."
The verb slēn displays many nondialectal stem variants because of phonological changes and analogical influences both within its own paradigm and from other strong verbs. [Middle English Compendium]
Modern German cognate schlagen maintains the original sense of "to strike." Meaning "overwhelm with delight" (mid-14c.) preserves one of the wide range of meanings the word once had, including, in Old English, "stamp (coins); forge (weapons); throw, cast; pitch (a tent), to sting (of a snake); to dash, rush, come quickly; play (the harp); gain by conquest."