Fault, failing, frailty, foible, vice are comparable when they mean an imperfection in character or an ingrained moral weakness.
Fault implies failure, but not necessarily serious or even culpable failure, to attain a standard of moral perfection in disposition, deed, or habit.
Failing is even less censorious than fault, for it usually implies a shortcoming, often a weakness of character for which one is not entirely responsible or of which one may not be aware.
Frailty often implies a weakness in character which makes one prone to fall when tempted. The term therefore often denotes a pardonable or a petty fault.
Foible denotes a harmless, sometimes an amiable, sometimes a temperamental, weakness or failing.
Vice (see also OFFENSE 3 ) is stronger than fault and failing in its suggestion of violation of the moral law or of giving offense to the moral senses of others, but it does not necessarily imply corruptness or deliberate defiance of the law and may be rather a general term attributable to an imperfection or flaw that impairs the soundness of a character or an ability.