Kent Police said officers were called to reports of a disturbance involving a group of people between High Street and Canterbury West railway station. The three men were taken to hospital following the fight, which happened just before 23:00 GMT on Friday.
A 19-year-old from Southwark, south London, and an 18-year-old from Canterbury have been charged. They have been remanded in custody to appear before Medway magistrates on Monday. Police have appealed to anybody who witnessed the incident and has not yet spoken to officers to come forward.