The newest and most promising that exists is OGC GeoPackage. The standard was published in February, 2014 and it will take some time before GIS programs support it properly but the list of implementations at http://www.geopackage.org/ is growing fast. There are already well known programs on the list, including ArcGIS, GDAL, and GeoServer.
Unlike GML which is a pure transform format that is probably always transformed into some other format for the real use in applications, GeoPackage is flexible and fast enough to be used by applications without any further processing. It can hold gigabytes of data on unlimited number of layers and both vector data and rasters can be stored into the same GeoPackage. Both spatial indexes and attribute indexes are supported which makes if possible to make fast selective queries from huge tables.
Shapefiles are very well supported by GIS programs but they have some limitations because of the dbf format that is used for storing the attribute data. Most common are:
- Attribute names can be 10 characters long at maximum
- Maximum number of columns (attributes) is 255
- String type attribute values can't be longer than 255 characters
- Only DATE datatype is supported, not DATETIME
- NULL values are not well supported
Biggest problem with GML is that it is so complex. This blog post gives 25 different and valid ways for encoding a polygon in GML 3 and proves that number of valid encodings is actually infinite http://erouault.blogspot.fi/2014/04/gml-madness.html.