While C# && short circuiting is part of the spec, the similar C# operator and and other pattern matching operators do not specify an evaluation order, and the compiler is free to do them in whatever order it wants. See the note on this page
&&
and