Both terms are non-specific and the two overlap quite a bit.
A braided steel cable (with no insulation) is used to pull cable cars up hills in San Francisco, while a braided chord (with no wires) is used to pull down the window shade next to me in this room.
One definition of cable is that it consists of multiple strands. By this definition a single strand of drawn or extruded wire is not a "cable", but if you twist or braid together two or more strands (with or without insulation) then you have a "cable". Some would even extend this definition to cover non-metallic strings/threads -- a single strand is not a "cable" but multiple strands together creates one.
The standard electrician's definition is that a single wire is not a "cable", but multiple wires, separately insulated and somehow bound together does comprise a "cable".
Cord is less well defined than cable, as the word is not used in a technical sense very much (except in medicine). But basically it means (in the general sense of this answer) multiple strands twisted or braided together.
With regard to electrical cables vs cords, the tendency is to use "cord" for a collection of insulated wires intended to be handled frequently (as a lamp cord or the cord for your earphones), and to use "cable" for a relatively fixed connection (as the wires in your walls or the cable connecting your TV to "cable").
But it's not writ in stone.