KML is XML tied to Google Earth's way of styling, and not all GIS tools read every feature. KMZ bundles a map with its icons and images in one file. KML is at home in places, routes and tours viewed in Google Earth; KMZ is the usual choice for KML with its icons and overlay images in one file.
Every format is read into plain GeoJSON features and written out from there, so coordinates, names and properties carry over wherever the target has a place for them. XML that declares custom entities is refused, and KML files are parsed without touching the network. Altitude and per-point timestamps are kept; a line with timestamps is written as a Google Earth track that can be played back. The KML is zipped as doc.kml, the name Google Earth expects.