| Sets | Lists |
| They have unique values | They have duplicate values |
| It is an unordered collection | It is an ordered collection. |
| Set implements HashSet, LinkedHashSet, TreeSet etc. | List implements ArrayList, LinkedList etc. |
| It can only have a single null value | It can have any number of null values |
| An Iterator can be used to traverse a set. | A ListIterator is used to traverse a list in both the directions. |
| It does not have any legacy class. | It has a legacy class called Vector. |