The Turkey U23 international joined Reading in 2007 but left the Madejski last month after his contract expired.
Royals boss Steve Clarke was keen to keep the 26-year-old and had offered him a new deal but he has opted to join the Turkish Super Lig champions.
Karacan made over 170 appearances for Reading but played just 11 times last season after suffering a serious knee injury.
Galatasaray claimed their 20th league title last season, a success which guarantees them a place in the Champions League group stages.
They have also signed Lukas Podolski from Arsenal this summer.