Both of them are different presets for an image used as empty.
There are a couple of key differences between reference and background images.
Reference images essentially act as objects. like standard objects they aren't transparent so if you pass an object behind the image then it will be obscured by the image.
Background images will show behind objects regardless of which view you see it from
Both reference images and background images will show in wireframe or solid view
Background images have backface culling
Unlike reference images if you create a background image while in orthographic view you cannot see the image in perspective view.