The crash happened at about 5:22 a.m. in the 100 block of E. Marquette Road in the Park Manor neighborhood, police said.
An 18-year-old was driving a white Jeep Cherokee westbound when he allegedly lost control and crashed into multiple homes.
Chicago police said homes in the 6600-block of S. Wabash Avenue were also damaged.
The 18-year-old male driver died at University of Chicago Hospital from his injuries, Chicago police said.
The two other occupants of the Jeep, including a 14-year-old boy, were taken to Comer Children's Hospital in critical condition.
Chicago police said two firearms were recovered from the vehicle.
No other injuries were reported.
Chicago police are investigating.