Okay, think of sessions as a server side cookie, which only remains there while you're on the site.
So, basically, if your cart has sessions then there is a wee file on the server with some unique id [To identify the machine] and the Shopping Cart ID thing, which you use to get the info from MySQL.
These are better, because they're "guaranteed" but they are deleted as soon as the browser is closed. HOwever, cookies (Which can be disabled, remember) can work for any period of time you choose.
(Technically, they aren't deleted, they just wont recognise the user anymore)
I think that makes sense.