Technically speaking there is no difference between text and binary file. But we can discuss the binary format and text format -
Binary files typically contain a sequence of bytes (most of time contains unreadable characters). When creating a custom file format for a program, a developer arranges these bytes into a format that stores the necessary information for the application so that it can be identified. You can open .png file in vi or any similar editor for the same. Whereas Text files are more restrictive and can only contain textual data.