A total of 23 children at Banksia Road Public School were injured, with five of them taken to Westmead Children's hospital, a NSW Ambulance spokesman said.
Two of the children were listed in a critical condition and a third had serious leg injuries, the spokesperson said.
NSW Police has since said two boys, aged eight, have died.
NSW Ambulance Superintendent Stephanie Radnidge said the scene was 'quite chaotic', with 16 ambulance vehicles responding.
'Obviously it was a scene of carnage,' she said. 'There were a number of distressed and overwhelmed children and teachers at the scene of a horrible accident.'
'On arrival, paramedics were confronted with a very distressing scene with a number of persons injured,' Superintendent Radnidge said.
'Once all people have been treated and assessed a total of five patients were transported to the Westmead Children's Hospital.'
NSW Police said the car left the road and crashed into a classroom in which children were being taught at the school about 9:45am.
A crime scene has been set up and police from the Bankstown Local Area Command are at the scene.
This is a developing story.