We consider an elementary, and largely unexplored, combinatorial problem in low-dimensional topology: for a compact surface S, with a finite set of points F fixed on its boundary, how many configurations of disjoint arcs are there on S whose boundary is F? We find that this enumerative problem, counting curves on surfaces, has a rich structure. We show that such curve counts obey an effective recursion, in the general spirit of topological recursion, and exhibit quasi-polynomial behavior. This “elementary curve-counting” is in fact related to a more advanced notion of “curve-counting” from algebraic geometry or symplectic geometry. The asymptotics of this enumerative problem are closely related to the asymptotics of volumes of moduli spaces of curves, and the quasi-polynomials governing the enumerative problem encode intersection numbers on moduli spaces. Among several other results, we show that generating functions and differential forms for these curve counts exhibit structure that is reminiscent of the mathematical physics of free energies, partition functions and quantum curves.