From ImmutableList javadocs:
Unlike Collections.unmodifiableList(java.util.List), which is a view of a separate collection that can still change
You might also want to take a look at this question (What's the difference between Collections.unmodifiableSet() and ImmutableSet of Guava).
Collections.unmodifiableSet()
ImmutableSet