Tiles can be images or vector based.
I also recommend having a look at https://openmaptiles.org/ if you want vector based tiles. You can generate your own tileset with this (output is a mbtiles SQLite file based on a open source schema; the schema describes which information go into the database and later can be shown) or download a set of tiles (because e. g. for the world it will take a lot of ressources and a long timeto generate a tileset). There are also servers (like tileservergl or tileservergl-light) that can serve the tilset - not only as vector tiles but also as graphical image tiles.
The data itself is free. Current map tiles on tile.osm.org is hosted on donated hardware, and run by volunteer sysadmins. That's not free. they reserve the right to block you for any reason at zero notice. Don't run your business or app relying on that. :)
There are plenty of companies who take OSM data and make map tiles. Those charge money or give it away for free.