The two vehicles burst into flames after the accident in the city of Yanan in the middle of the night, Xinhua news agency reports.
It quoted local police as saying that three people survived the collision, but suffered injuries.
The cause of the accident in Shaanxi province is being investigated.
The two vehicles collided at about 02:00 local time (18:00 GMT Saturday) on the Baotou-Maoming motorway.
"Soon after the collision, the bus was engulfed by flames," local police officer Yue Jiuxiang told the state-broadcaster CCTV.
"The front part of the bus was seriously damaged. Also most of the passengers were sleeping. This is why so many people died."
Chinese media later published photos, showing the burnt wreckage of the bus stuck against the back of the tanker.
Officials said the bus had been heading to Shaanxi's provincial capital of Xian from Inner Mongolia.
China's roads are highly dangerous, with traffic laws and safety widely flouted across the vast country.
In 2011, more than 62,000 died in traffic accidents, state media reported.
At least 36 people have died after a sleeper-bus collided with a methane-laden tanker in northern China, state-run media say.