Timothy Jones, 18, of 6337 S. Rockwell St., was charged with one count of murder, police said.
Authorities said Jones was arrested at his home and was identified by witnesses as the person who killed Charinez Jefferson, 17, on Tuesday, August 16.
Jefferson, who was six months pregnant with a baby boy, was walking home from a corner store in Marquette Park when she stopped to talk to friends in the 3800-block of West 64th Street. Police say she was shot in the head and multiple times in the body.
Doctors were able to deliver her baby. He was in critical condition Sunday night at Advocate Christ Medical Center in Oak Lawn.
Earlier Sunday evening, a anti-violence march was held in Englewood in Jefferson's honor.
The Sun-Times Media Wire contributed to this report.