Police say Tra Young tried to yank the boy away from his grandmother's hand at about 9:30 a.m. at 5th Avenue and Broad Street while the boy's family was participating in the Susan G. Komen Race for the Cure.
The child's aunt confronted Young and told him to let go, which he did, police said.
Police say he then took off running and the boy's father and uncle followed him to 4th and Cedar Street, where they told an officer directing traffic what happened. The officer took Young into custody and patrol officers arrived on the scene.
The boy's family said another family approached them while they were following the suspect and told them that the suspect had attempted to grab another child earlier on the event route.
Prosecutors charged Young with second degree attempted kidnapping on Wednesday. He remains in jail on $750,000 bail and will be arraigned June 19.