What can I do with proper classes? There are standard tricks, constructions and techniques in ZFC when working with proper classes; for instance one can form the cartesian product of a pair of classes without difficulty, or more generally a fibred product. What I am after is a reference that is a summary of these constructions/techniques.
From a category-theoretic point of view, one should be able to say what the category of classes in ZFC and class functions is 'like' (working purely with the first-order theory of categories). I am aware of Joyal and Moerdijk's Algebraic Set Theory, and that they give as an example the category of classes in NBG. However, I would like to stick within ZFC.
 A: OK, here is a category-theoretic approach, just come out on the arXiv. Namely, we can define the syntactic category for ZF (which is equivalent to the category of definable classes) and this is a Boolean pretopos with a subobject classifier which is not cartesian closed.
So essentially you can do anything for classes that you can do for sets except form 'function classes' and (e.g. power classes).
A: I'm not sure if there is a written reference for that.
Let me give a quick summary of what I can tell. We know that classes are actually formulas with one free variable. We can therefore manipulate classes the same way we manipulate formulas, with the added fact that we can encode all sort of structure into the sets.
For example, if $A=\{x\mid A(x)\}$ and $B=\{x\mid B(x)\}$ then the union would be disjunction; the intersection would be conjuction. So far this is really just the same as formulas being manipulated.
If we wish to take a Cartesian product we can use the fact that we can define ordered pairs, and so $$A\times B=\{z\mid z=\langle x,y\rangle\land A(x)\land B(y)\}$$
This can become intensely complex using all sort of crazy formulas. What you can't do is talk about classes as actual objects. You cannot say that "there exists a subclass", or "the collection of all subclasses" - although you can talk about collection of all subsets: $$\mathcal P(A)=\{x\mid\forall y(y\in x\rightarrow A(y))\}=\{x\mid x\subseteq A\}$$
You can talk about the existence of subclasses externally, and if you're lucky enough you can prove they are definable internally as well. For example, you can talk about the class of ordinals or sets of ordinals externally, and since these are simple enough definitions this is also internally definable.
I suppose that if you wish to give some recent example which bothered you I could try and help to figure it out.

In the comments David asks about equivalence relations and quotient of equivalence relations. The problem here is that often the quotient space is a collection of equivalence classes, and if the equivalence classes are not sets then this object is not even definable in ZFC.
However we can use Scott's trick to overcome this issue. Scott's trick makes heavy use of the axiom of regularity, and its two common uses are defining cardinals in ZF and proving that one can talk about ultrapowers internally. 
Suppose that $\varphi(x,y)$ is a formula defining an equivalence relation. We define $$A_\varphi=\{x\mid \varphi(x,A)\land\mathrm{rank}(x)\text{ is minimal for this property}\}$$
Namely if $\varphi(x,A)$ is true and $x\in A_\varphi$ then there is no $y$ whose rank is smaller than that of $x$ and $\varphi(y,A)$.
By the fact that all the sets in $A_\varphi$ have the same rank we can now show that this i a set, since it is bounded by some $V_\alpha$. It is possible that there is a canonical choice of representative, or it is possible that there is none. But we don't care.
Now we can talk about $C/\varphi = \{A_\varphi\mid A\in C\}$, as a collection of equivalence classes, and $A_\varphi=B_\varphi$ if and only if $\varphi(A,B)$ is true as wanted.
If $C/\varphi$ is a set (for example if you can prove there can only be set-many of equivalence classes) then using the axiom of choice - if it exists - it is possible to just pick a system of representatives, but since the equivalence classes themselves need not be sets, you would still have to use Scott's trick to define the collection from which you are choosing.
A: Have a look at p. 5 of Jech's Set Theory. The short answer seems to be that the things you can do with classes are just set-theoretic analogues of (some of) the things that you can do with (interpreted) formulas; for talk of classes is simply to be understood as shorthand for talk of formulas. 
As Jech says, the advantage of using classes lies in the fact that "[i]t is easier to manipulate classes than formulas".
A: I think that Devlin's The Joy of Sets does that. He deals mostly with ZFC in this book, but in some chapter in the middle (I believe it is in the chapter on ordinals), he uses the convenience of classes to prove a general recursion theorem. He even explains why the use of classes is justified, although he emphasizes that classes are not valid objects of ZFC.
