Riemann-Roch theorem on surfaces as generalization of Riemann-Roch on curves The standard Riemann-Roch theorem on a smooth projective algebraic curve $x\in X$ over an algebraically closed field $k$ says that for any divisor $D=\sum n_x[x]$:
$$h^0(D)-h^1(D)=\deg(D)+1-g$$
which has the following beautiful geometric interpretation:

the formula calculates the dimension of the vector space of global
  meromorphic functions which at each point are "no worse" than the meromorphic map $\frac{1}{z^{n_x}}$. In other words we find the dimension of the vector space of meromorphic functions with order of poles bounded from above and orders of zeros bounded from below at each point.


Now suppose that $X$ is an algebraic projective surface over an algebraically closed field, then the Riemann-Roch theorem (see for example Beauville's book) is given by:
$$\chi(D)=\chi(0)+\frac{1}{2}D.(D-K_X)\quad (\ast)$$
I've understood the proof of the formula $(\ast)$ but I'd like to find an intuitive interpretation of it (like in the one-dimensional case). Moreover why is this theorem called Riemann-Roch? What is the link with the one dimensional Riemann-Roch?
Ok, it is clear that $h^0(D)-h^0(D)=\chi(D)$ on a curve, so both theorems give a formula for calculating $\chi(D)$. Is it that all? Is there some hidden meaning I'm missing?
 A: Riemann-Roch type formulas compute Euler characteristic of line bundles (in the simplest form) in terms of some intersection numbers. This is interesting and useful because it is a connection between two seemingly independent subjects: cohomology of sheaves and intersection theory.
Simplest cases are curves and surfaces, where 
$\chi(D)=\chi(0)+\frac{1}{2}D.(D-K_X)\quad $ and $\chi(D)=\chi(0)+\deg D$.
We can look at $\deg D$ on a curve $C$ as intersection number $\deg D = \int_C c_1(\mathcal{O}(D))$ or as intersection with fundamental class $[C]$ of the curve: $\deg D = c_1(\mathcal{O}(D)) \cap [C]$. Degrees are the only intersection numbers available on curves.
For a surfaces $X$ we can look at $D.(D-K_X)$ in a similar way: $D.(D-K_X)= \int_X c_1(\mathcal{O}(D)) c_1(\mathcal{O}(D-K_X))= c_1(\mathcal{O}(D)) c_1(\mathcal{O}(D-K_X)) \cap [X]$
This formulas we generalized by Friedrich Hirzebruch to higher dimensions and vector bundles. In general form it is called Hirzebruch–Riemann–Roch theorem https://en.wikipedia.org/wiki/Hirzebruch%E2%80%93Riemann%E2%80%93Roch_theorem
It was furhter generalized by A. Grothendieck to the relative case and called Grothendieck–Riemann–Roch theorem https://en.wikipedia.org/wiki/Grothendieck%E2%80%93Riemann%E2%80%93Roch_theorem
In differential geometry and topology this type of results called Atiyah-Singer index theorem https://en.wikipedia.org/wiki/Atiyah%E2%80%93Singer_index_theorem 
On a complex manifold we can use Dolbeault cohomology instead of sheaf cohomology and computing Euler characteristic is the same as computing index of Dolbeault operator plus it's adjoint. So, Hirzebruch–Riemann–Roch theorem is a special case of Atiyah-Singer index theorem on a complex manifold.
