The 30-year-old started his senior career with Portsmouth before moving to Stoke City, where he spent six years and made 177 appearances.
The Republic of Ireland international left Stoke to join Bournemouth in 2016 but only played three games before a loan spell with West Bromwich Albion.
He later joined the Black Cats on a free transfer in August 2017 and made 22 appearances last season as they were relegated to League One.
✍️ Bolton Wanderers are pleased to announce the signing of Marc Wilson on a one-year deal.
— Bolton Wanderers FC (@OfficialBWFC) July 24, 2018