Since the marching-cube polygonizes volume-data, it makes sense to use volume-textures, too ("usual" 2d-texturing approaches usually suffer badly from discontinuities).
Volume-textures are usually expensive either in memory (stored 3d textures) or in processing (procedural textures), but since the iso-surface only intersects a small area of the whole volume, most of the texture-data isn't needed anyway. Assuming your surface stays constant, you could "bake" the 3d-texels into a 2d texture-unwrap.