SHP is several files, limits field names to 10 characters and is not web-friendly. KMZ bundles a map with its icons and images in one file. SHP is at home in exchanging vector map layers between GIS programs; 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. A zipped shapefile (the .shp with its .dbf and .shx) or a bare .shp is read. If a .prj file names the coordinate system, coordinates are converted to latitude and longitude; a coordinate system that cannot be read is refused. 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. Coordinates outside the latitude and longitude range are refused, since the file is probably in a projected coordinate system.