The EU Customs Union is just that, a customs union. All EU members take the same tariffs on imports, and after a good enters the customs union, it can be moved freely in it without any EU state demanding any additional tariffs.
But the European Single Market goes quite a lot further. It guarantees the free movement of:
- Goods: No restriction on moving goods between EU states - in the form of tariffs or any other forms of import/export restrictions. This also prohibits any national taxation or subsidy systems which give domestic goods an unfair advantage over EU imports.
- Capital: No restrictions on money transfers between EU countries. Having the Euro as a common currency contributes to this, as well as participation in the SEPA system for wire transfers.
- Services: No barriers to offering services to people who reside in other EU countries. This is mostly implemented through the Services in the Internal Market Directive.
- Labour: No barriers for working in other EU countries than one's place of residence. This is not just implemented by allowing the free movement of people over national borders, but also the removal of any systematic employment barriers. The relevant EU regulation in this matter is the Free Movement of Workers Regulation.
The whole idea is that it should make no difference whatsoever in commerce whether customer and vendor are within the same EU country or not.
So you can say that the EU customs union is a subset of free movement of goods in the EU which is a subset of the European Single Market.
Historically speaking, the idea of the EU Customs Union is a lot older than the idea of an European Single Market. The EU Customs Union was created in 1958 as part of the founding of the European Economic Community. The gradual process of upgrading the customs union to a full-fledged single market started in the late 80s with the Single European Act. The process continues to this day.