There are two ways of doing this. One is Ross Millikan's: you will make ten "up" moves, and 20 "right" moves; the only question is which order you make them in. Imagine placing the "right" moves on a row; now you need to decide where to do the "up" moves: you do so by inserting them "in between" (or before, or after) the "right" moves. So you need to choose ten places to put "up" moves: there are 21 locations for them (nineteeen in between the "right" moves, one before all of them, one after), and you are allowed to choose the same location more than once.
This is a combinations-with-repetitions: the formula is $\binom{n+r-1}{r}$, where you have $n$ possibilities, and must make $r$ choices with repetitions allowed. In this case, $n=21$, $r=10$, so you get $\binom{30}{10}$.
There is another way of doing it, which is more graphical. I'll do it with a 4 by 3 array so you see how it works. You have this array:
$$\begin{array}{cccc}
\cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot
\end{array}$$
Now, you start at the bottom left, so there is only one way to get there; we put a $1$ next to it.
$$\begin{array}{llll}
\cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot\\
\cdot\;1& \cdot & \cdot & \cdot
\end{array}$$
Then, you can go either up or right; there is only one way to get to those points (via the first move); we put a $1$ next to them:
$$\begin{array}{llll}
\cdot & \cdot & \cdot & \cdot\\
\cdot\;1 & \cdot & \cdot & \cdot\\
\cdot\;1& \cdot\;1 & \cdot & \cdot
\end{array}$$
Now: to get to $(1,1)$, you can either get to it from $(1,0)$ or from $(0,1)$; since there is only one way to get to each of those, there are two ways to get to $(1,1)$. On the other hand, only one way to get to $(2,0)$ or to $(0,2)$:
$$\begin{array}{llll}
\cdot\;1 & \cdot & \cdot & \cdot\\
\cdot\;1 & \cdot\;2 & \cdot & \cdot\\
\cdot\;1& \cdot\;1 & \cdot\;1 & \cdot
\end{array}$$
Next: to get to $(1,2)$, you can arrive either from $(0,2)$ (one way of being there), or from $(1,1)$ (two ways of getting there); so in total, three ways. Likewise, you have three ways to get to $(2,1)$, because you can either go up from $(2,0)$, and there is only one way to do all of that, or you can go right from $(1,1)$ (and there are two ways of doing that, corresponding to the two ways there are to get to $(1,1)$; so we have:
$$\begin{array}{llll}
\cdot \;1 &\cdot\;3 & \cdot & \cdot\\
\cdot\;1 & \cdot\;2 & \cdot\;3 & \cdot\\
\cdot\;1& \cdot\;1 & \cdot\;1 & \cdot
\end{array}$$
Continuing this way, we get:
$$\begin{array}{llll}
\cdot\;1 & \cdot\;3 & \cdot\;6 & \cdot\;10\\
\cdot\;1 & \cdot\;2 & \cdot\;3 & \cdot\;4\\
\cdot\;1 & \cdot\;1 & \cdot\;1 & \cdot\;1
\end{array}$$
So there are $10$ ways to get to the top right corner in the 4 by 3 case.
You may even recognize that these numbers are just Pascal's triangle lying on its side! Well, there is a combinatorial formula for the entries of Pascal's triangle: the $r$th entry in the $m$th row corresponds to the coefficient of $a^{m-r}b^{r-1}$ in the binomial expansion of $(a+b)^{m-1}$, so it equals $\binom{m-1}{r-1}$. To figure out the entry that corresponds to the top right corner, note that you go "down" one row for each position on the $x$-axis, and another one for each step up. So here we have gone to the 4th row on the horizontal steps, and then to the 6th row on the by going up twice. Each step up is a move "right" on the row. So with a 4 by 3, we are in row $4+(3-1)=6$, and we are in position $3$ of that row. According to the formula above, that corresponds to $\binom{4+2-1}{3-1}=\binom{5}{2}$. This corresponds to the need to make $3$ moves right and two moves up, so we need choose where to place the two up moves among the three right moves; there are four places to put them in (before the three, after the three, or in the two spaces in between), so the formula I gave above gives this answer as well.
After a bit of doodling, I have persuaded myself of the following:
To get to the origin in the fewest moves, always make the move (or one of the moves) that takes you closest to the origin, that is not to (0,1), or (2,2), or a reflection of one of these cells.
Perhaps after a bit more doodling, I'll come up with some kind of proof.
Updated to answer the question: If the above is true, then we can proceed as follows:
We may assume $m \ge n$. Then we repeat the move $(-2,-1)$ until we reach either the diagonal or the $x$-axis (I'm running the film backwards here, from $(m,n)$ to $(0,0)$).
If $m \ge 2n$, this takes $n$ moves, and ends up at $(m-2n,0)$.
If $m \le 2n$, this takes $m-n$ moves, and ends up at $(2n-m,2n-m)$.
So we only need to know how many moves are required from the diagonal or the $x$-axis.
For the diagonal, the number of moves to get from $(x,x)$ to the origin is
$$2\lfloor \frac{x+2}{3}\rfloor $$
except for the anomalous point $(2,2)$, which requires 4 moves, not 2. But unless our starting point was $(2,2)$, we can ignore this anomaly $-$ coming from point $(4,3)$, we don't move to $(2,2)$, but to $(3,1)$, which requires 2 moves.
For the $x$-axis, the number of moves required to get from $(x,0)$ to the origin is
$$x - 2\lfloor\frac{x}{4}\rfloor$$
except for the anomalous point $(1,0)$, which requires 3 moves, not 1. But unless our starting point was $(1,0)$, we can ignore this anomaly $-$ coming from point $(3,1)$, we don't move to $(1,0)$, but to $(1,2)$, which requires 1 move.
From this, it is easy to construct an explicit formula, if that's what you want; you only have to treat the starting points $(2,2)$ and $(1,0)$ as special cases.
Best Answer
You can change the reference system $(x,y) \to (u,v)$ , to a diagonal one $$ \left\{ \matrix{ u = {{y + x} \over 2} \hfill \cr v = {{y - x} \over 2} \hfill \cr} \right.\quad \Leftrightarrow \quad \left\{ \matrix{ x = u - v \hfill \cr y = u + v \hfill \cr} \right. $$
The allowed steps then are $$ \left( {\Delta x,\Delta y} \right) \in \left[ {\left( { \pm 1, \pm 1} \right)} \right]\quad \Leftrightarrow \quad \left( {\Delta u,\Delta v} \right) \in \left[ {\left( { \pm 1,0} \right),\left( {0, \pm 1} \right)} \right] $$
The origin $O=(0,0)$ is the same in both systems.
Since in the $u,v$ reference the steps are unitary in both axes, and performed separately, then clearly any point with integral coordinates $(u,v) \in {\mathbb Z}^2$ can be reached, in a minimum number of steps $N_{min}=|u|+|v|$.
Transforming back to the $x,y$ plane $$ \eqalign{ & \left\{ \matrix{ u \in Z \hfill \cr v \in Z \hfill \cr} \right.\quad \Rightarrow \quad \left\{ \matrix{ u = 2n + j\quad \left| {\;n \in Z,\;j = 0,1} \right. \hfill \cr v = 2m + k\quad \left| {\;m \in Z,\;k = 0,1} \right. \hfill \cr} \right.\quad \Rightarrow \cr & \Rightarrow \quad \left\{ \matrix{ x = u - v = 2\left( {n - m} \right) + j - k = 2p + i \hfill \cr y = u + v = 2\left( {n + m} \right) + j + k = 2q + i \hfill \cr} \right.\quad \left| {\;p,q \in Z,\;i = 0,1} \right. \cr} $$ which means that only and all the $x,y$ integral points having same parity can be reached, and that the minimum number of steps will correspond to $max(|y|,|x|)$.