During most the first millennium CE, North and West Germanic languages were written in runic alphabets. Gradually, each language shifted from the runic alphabet to the Latin alphabet. The people who adapted the Latin alphabet for use with a new language chose which letters to align with which sounds. For the phoneme /k/, the Latin alphabet offered two choices: C and K. In most cases K was chosen, and to this day German, Dutch, and the Scandinavian languages make very sparing use of C, except in digraphs like CH. But for Old English, they opted for C, and in fact K is not even included in the Old English Latin alphabet. Why the difference?
After some answers and a bit more research, it is clear that Old English used C, following the practice of the Insular Celtic languages, which followed the practice of Latin. So the question becomes: Why did the other Germanic languages use K? Why did they adopt the Latin alphabet but not the Latin practice of using C?
After some more research, it seems that the most likely answer is the time in which these languages adopted the Latin alphabet, specifically, before or after the palatalization of /k/ and /g/ in Vulgar Latin. When the Celtic scribes learned the Latin alphabet, it was from Romans, so they based their letter choices on Latin. Later, in the Romance languages derived from Vulgar Latin, C could refer to either /k/ or a palatalized version like /tʃ/, while K was unchanged. Since these languages, such as Old French, were widespread at the time, the people adapting the Latin alphabet for continental Germanic languages saw C as an unneeded complexity and opted for the simpler option, K.
This is speculation on my part so if anybody has more definite information, it would be appreciated.