The man, surnamed Su, ignited a barrel of gasoline in the bus in Guizhou Province to take revenge on society, they said.
The fire started to spread in the bus when it was passing through a primary school in the northern part of Guiyang City yesterday.
It spread quickly and many people simply did not notice the emergency hammers to smash the bus windows in order to escape, survivors said.
The injured, including one in critical condition, were being treated at local hospitals.
Also Read
A disgruntled man set fire to a bus in the east China's coastal city of Xiamen in June last year in which 47 people were killed and 34 others injured.
On June 5, 2009, a bus in Chengdu caught fire and left 25 passengers dead.
Police said the fire was deliberately set off by an unemployed man who died in the blaze.