Q:

Environment variable assignment followed by command

What exactly is happening in the below bash incantation?
x=10 echo $x

I was under the impression that commands on bash can be chained using &&, || or ; but not simply separated by white-space. The above only works if the first command is an assignment. E.g. ls ls fails but foo=zoo ls works just fine.
A real case of the above style is found in this SO answer.

A:

That is a special syntactic construction to invoke a command with a variable set.
It means that the scope of the variable is limited to that command.
For example, this command:
x=10 sh -c 'echo $x'

Is quite equivalent to this other command:
( export x=10; sh -c 'echo $x' )

The example you gave (x=10 echo $x) is not an appropiate example of this construction because the variable $x is evaluated before echo is invoked.

A:

Your command assets variable x to your value for the specific command you are running, instead of setting it in your shell. Local assignment so to say.
You can use this to either set or change an existing variable for one command.
Other uses I've used is
http_proxy=myproxy wget http://myurl

This will set a specific proxy for that particular url, without changing your shells default proxy setting. 
LANG=C sort file

Sort your file based on a specific language setting, but only for that particular execution. 

