Votre requête actuelle fait essentiellement un INNER JOIN à cause du consultant_id = 5 sur WHERE clause. Je pense que vous voulez réellement utiliser :
SELECT *
FROM consultant_memberships m
LEFT OUTER JOIN consultant_memberships_list l
ON m.`id` = l.membership_id
AND l.consultant_id = 5
WHERE l.membership_id IS NULL;
Voir SQL Fiddle avec démo