The following gives a development of Arakelov theory general enough to handle not only regular arithmetic surfaces but also a large class of arithmetic surfaces whose generic fiber has singularities. This development culminates in an arithmetic Riemann-Roch theorem for such arithmetic surfaces. The first half of this work gives a treatment of Deligne's functorial intersection theory tailored to the needs of this paper. This treatment is intended to satisfy three requirements. The first is that it be general enough to handle families of singular curves. The second is that it be reasonably self-contained. For example, this treatment bypasses Knudson and Mumford's development of the determinant of cohomology and instead gives a direct and concrete approach; all arising sign problems are handled directly. This treatment also develops much of the needed duality theory. The third requirement is that the constructions given be readily adaptable to the process of adding norms and metrics such as is done in the second half of this paper. The second half of this paper is devoted to developing a class of intersection functions for singular curves which behaves analogously to the canonical Green's functions introduced by Arakelov for smooth curves. We call these functions intersection functions since they give a measure of intersection over the infinite places of a number field; the intersection over finite places can be defined in terms of the standard apparatus of algebraic geometry. There are major differences between my intersection functions and Arakelov's canonical Greens functions. For example, for a given non-singular curve, Arakelov's canonical Green's function is unique; however, for a given singular curve, the set of intersection functions is in general parameterized by a finite dimensional real vector space. We give the dimension of this space. Another difference is that for any given non-singular curve its canonical Green's function is bounded from below (or above, depending on the convention used). For any given singular curve, an associated intersection function has no such bounds, but in fact exhibits certain asymptotics as the points approach the singularities of the curve. Finally, using the above mentioned intersection functions together with our treatment of Deligne's functorial intersection theory, we define an intersection theory for arithmetic surfaces which includes a large class of singular arithmetic surfaces. This culminates in a proof of the arithmetic Riemann-Roch theorem.