Может быть, немного лучше, но вот что пришло в голову первым:
var firstList = [];
$("#listOne li").each(function() {
firstList.push($(this).text());
});
$("#listTwo li").filter(function() {
return firstList.indexOf($(this).text()) > -1;
}).remove();
Вот рабочий пример . Он создает массив текста элементов в первом списке, затем фильтрует элементы второго списка, возвращая только те, которые также есть в первом списке, а затем удаляет соответствующие элементы из DOM .