끝나다: end; comes to a close. (intransitive verb - does not need an object)
끝내다: finish; end; wrap up. (transitive verb - requires an object)
The two are not interchangeable, as in these examples:
- 오늘은 일이 일찍 끝났다: Work finished early today.
- (난) 오늘 일을 일찍 끝냈다: I finished my work early today.