MathWorld knows! :)
Basically its a method for visualizing functions. I guess (crudely) that this means you can 'see' the domain that the function can map to, based on any given variables that it might take..
From here:
"Among a number of wonderful ideas we owe Riemann, the idea of Riemann surface is, without doubt, the most beautiful, everlasting, intensively developing, unifying and fertilizing a number of other ideas, penetrating the whole body of mathematics, and, in turn, many branches of physics."
-- K. Maurin. The Riemann Legacy, Kluwer, 1997
There's some brief history of Riemann.
The reason I guess Riemann surfaces pop up in string theory is that they can be useful to define the 'space' in which a string can move..?
That's it. My brain is satisfactorily fried for the night.
I'm going to do some coding now.
Programming is easy!
John.
p.s. Check out some of these visualizations.