Visually, a table can create these columns just as, or more easily than a list that is manipulated this way. The difference is in the structure of the source. Three table cells in a row form three discrete lumps of content, but logically this is a single list, not three seperate lists.
By using a single list in the source and having it be split up only via CSS, that clean contnt structure of a single list is not altered. This can really matter if you should ever become blind and have to have pages read to you by a screen reader.
Also, future search engines might be able to take structural lists into account, but only if you actually employ real lists and not segmented tables to display a list in several columns.