la principal diferencia... es el porqué fueron creadas... las tablas fueron pensadas para (vaya la redundancia) tabular aunque son usadas muchas veces no de la mejor forma (de a poco se esta revirtiendo esto) para el layout (ubicar los diferentes elementos de un web).
Como te decía hay mucha gente (yo era uno de esos hasta hace poco) que posiciona los distintos elementos de una web mediante tablas... eso tiene varias desventajas, como por ejemplo que para obtener un mismo resultado se necesita mucho + código, cosa que por ejemplo dificulta entender el código de una web y eso puede traer "consecuencias colaterales" como dificultad para posicionarse en los buscadores y claro está archivos de mayor tamaño... por lo tanto te hacen consumir más transferencia de datos y en consecuencia te salen más caros. Si es una web pequeña quizás no se noten las diferencias, pero para una web mediana/grande un par de Kb multiplicados por el nº de visitas te puede dar bastante transferencia usada "de más".
Lo que si hay que diferenciar es CSS con las capas y las tablas. Usar CSS es independiente de las capas y tablas. Se asocia más el CSS a las capas que a las tablas porque quizás las capas sean "más amigables" con el css, pero las tablas funcionan perfectamente bien con hojas de estilos.
Acá hay un tutorial sobre el uso de CSS y TABLAS.
Resumiendo, las "grandes batallas" serían:
para posicionar elementos del sitio... capas
vs. tablas
para dar estilo... css
vs. etiquetas (<font>, etc.)
Para terminar
una capa es bien sencillo de crear
...ahora vas a ver porque te digo que es mucho menos código
Código HTML:
<div class="TuCapa">esto esta dentro de la capa llamada TuCapa</div>
vas a la hoja de estilos y ponés:
Código HTML:
.TuCapa {height:75px; width:115px; background:#000000; color:#ffffff}
y ahí tenés una capa de 75 x 115 px con fondo negro y que el texto que contenga sea de color blanco...
Bueno, perdón la extensión