Learn English – the difference between blame and accuse

differenceword-difference

Is there any difference in meaning between blame and accuse or are they interchangeable? I looked both of them up in the dictionaries and couldn't figure out if there's any difference between them.
Dictionary Definitions
Accuse → If you accuse someone of doing something wrong or dishonest, you say or tell them that you believe that they did it.
Blame → If you blame a person or thing for something bad, you believe or say that they are responsible for it or that they caused it.

Best Answer

Formally, we use accuse with an act—we assert that somebody did something reprehensible:

Mary accuses John of failing to lock the door.

But we use blame with the outcome—we assert somebody's responsibility for the undesirable result:

Mary blames John for the robbery. OR
Mary blames the robbery on John.

Informally, however, these distinctions often blur. For instance, if the robbery has already been mentioned, blame may very easily take a for clause which explains why the target is blamed:

Mary's house has been robbed. Mary blames John, for failing [=because he failed] to lock the door.

And accuse may take a complement which expresses a state rather than an act:

Mary accuses John of being responsible for the robbery.