I've seen all four used in the context of something being finished. What's the difference between them?
- Anybody can ask a question
- Anybody can answer
- The best answers are voted up and rise to the top
My non-native intuition, with examples stolen/adapted from alc:
They all means "to finish", but "to finish" has two different meanings.
One is "to get through" or "to come to an end", which means something ended.
The other is "to complete" or "to come to be available", which means something is ready.
済む, 終わる = the former
出来る, 上がる = the latter