All 35 people aboard the bus survived the crash that happened around 8 a.m. in Wadsworth, 45 miles north of Chicago, Lake County Sheriff Mark Curran Jr. said.
The bus driver may have run a red light, Curran said, adding that the bus driver was speaking with authorities as part of their investigation.
Barbara Taylor, who lives nearby, said she heard the collision from her home.
"I heard a thud and the ground shook a little bit and I looked out the bedroom window and saw the bus on its side," Taylor said.
By the time she looked from another window, other drivers were rushing to the scene to help, she said. The accident happened about a mile from Newport Elementary School.
After the first collision with a Jeep Wrangler, the bus spun around and hit a Jeep Cherokee before flipping onto its side. The front roll bar of the yellow Jeep Wrangler was completely removed by the force of the crash, the hood flattened and squashed into the front seats. Debris lay scattered in adjacent farm fields.
The coroner's office says a male died at the scene but did not provide other details. An autopsy is expected later Friday.
At Vista Medical Center East in Waukegan, spokesman John Griffin said a girl who was in fair condition with a skull fracture was transferred to Lurie Children's Hospital in Chicago. Five other students remain at the Waukegan facility.
Sarah Toomey, a spokeswoman for Advocate Condell Medical Center in Libertyville, said 24 children were taken to the hospital and 13 had been released by midday.
Those who remained were with their parents. She said the 24 had "very minor injuries," including bruises, bumps and scrapes. Some children had broken bones, particularly in their hands as they braced themselves and fell from their seats when the bus tipped over, said Charles Nozicka, the medical director of hospital's pediatric emergency department.
"Luckily, most of them were just shaken up," he said.
Most of the children climbed out of the bus through the back exit.
"Some of the kids were upbeat, jovial as if they just got off a ride at Great America," Lake County Sheriff Chief Brian Keller said. "Other kids were asking for their mother or father and wanted to go home."
Garcia Cano reported from Chicago.
AP video freelancer Bob Brant contributed to this story.