It's useful because the read-string in core is passing a string to the reader, essentially like an eval[1].
The edn namespace is for Extensible Data Notation[2], and exports functions for reading an object from a stream and from a string without passing it to the lisp reader.[3]