There is no difference in the meaning, only a difference in the feeling.
"Can" is from German. Both "able" and "capable" are from Latin.
In English, words that come from German are usually comfortable, plain, and natural feeling.
Words that come from Latin often feel more like school or science or words.