Deciding whether something is or isn't a set depends on the model ZF you use.
A model of ZF consists of a S** of things, where S** means a naive collection of objects. This collection must satisfy the axioms of ZF. The things in the collection are called the sets in the model.
You might have seen this idea before if you've studied groups or vector spaces.
A vector space is a set satisfying some axioms, elements in the vector space are vectors. And just as the vector space is not a vector neither is the S** a set.
A common way to show something isn't a set is to demonstrate that it doesn't satisfy some axiom or other, or has cardinality strictly greater than any set cardinal.
Let's do 3 analogies, since they are easier:
Is the 2x2 matrix whose entries are a_11 = 1 a_12 = 1 a_21=0 a_22 = 1 an element of a group? Well, we find a group of which it is an element, which is elementary (it is a member of the group of all two by two invertible matrices under multiplication).
The matrix given by 1,0,0,0 resp in that list can never be a member of a matrix group where the operation is matrix multiplication, but it might be an element in some other model, and indeed is.
Can the elements a,b,c be elements of a group where a,b,c are all distinct and ab=a=ac? No, this can never happen since then b and c would both be distinct identity elements, so no model of GROUP can have elements that behave like that.
Deciding if something is or isn't a set in some model, or if there is a model in which it is a set is very hard, don't expect there to be easy examples.
Note this post owes a lot to an article I read by Tim Gowers.