Claro que existen ventajas y desventajas, por ejemplo: un menú javascript no va a a funcionar si el navegador de el usuario no tiene activado JavaScript, en cambio un menú CSS se va visualizar aunque no esté activado.
En mi caso yo solo uso Javascript en los menús cuando es necesario (algunos efectos que no son posibles en CSS)
Saludos