Born in Bergisch Gladbach, Koch started his career playing at amateur club SpVgg Erkenschwick before becoming a professional in January 1992, when he moved to the Bundesliga with Fortuna Düsseldorf. He was only understudy to firmly established Jörg Schmadtke in his first months, making no appearances. After Fortuna was relegated with a 20th-place finish, Koch eventually became the club's first choice, helping it return to the top division in 1994–95, and continued in that position in the following years; he made his debut in the competition on 11 August 1995, at SV Werder Bremen. In June 1997, shortly after another top flight relegation, Koch agreed terms with PSV Eindhoven, but spent only three months with the Dutch club and returned to Germany in October 1997, signing with Arminia Bielefeld, where he played a further two-and-a-half campaigns, with one relegation and one promotion. During the 2000 winter break, Koch left for 1. FC Kaiserslautern and became the club's first-choice goalkeeper in March 2000, after spending six matches as understudy to Uwe Gospodarek. He went on to make nine league appearances throughout the final eleven matchdays of the season and remained first choice in the following two seasons, but lost his position to the young Tim Wiese in early 2003, and left the club at the end of that season. In August 2003, Koch signed with FC Energie Cottbus, which competed in the second division at the time, and subsequently made 26 appearances for the club in the league before moving to another second-tier club, MSV Duisburg, in June 2004, on a five-year contract. He made 67 out of possible 68 league appearances in his first two seasons with Duisburg, only missing one match in 2004–05 through suspension after collecting five yellow cards, as the club were promoted to the Bundesliga. Duisburg were relegated again after just one season. Koch cancelled his contract with Duisburg in late June 2007 and went to join Croatian first-division side NK Dinamo Zagreb on a free transfer in early July, signing a two-year contract. He made his competitive debut for Dinamo on 17 July, in the club's first Champions League qualifier, in Azerbaijan against FK Khazar Lenkoran, which ended in a 1–1 draw. Despite the fact that he only spent one season with Dinamo, Koch received large amounts of praise from the fans due to his incredible charisma after only a few months of playing for the club, with many of them seeing him as the future captain. However, Dinamo decided to re-sign their former player Tomislav Butina for the 2008–09 season, and Koch was eventually sold to SK Rapid Wien, in July 2008. At Rapid, Koch started the season as first-choice, deputising for injured Helge Payer. However, in the derby against FK Austria Wien on 24 August 2008, he was severely injured after a firecracker, thrown from the stand with the travelling Austria supporters behind his goal, exploded in his proximity. Koch had to be substituted and it was later reported that he had suffered hearing damage and shock. In late September 2008, he was quoted saying in an Austrian newspaper that he still was experiencing problems with his balance as a result of the incident. Koch announced his retirement on 18 March 2009, stating that he recognized there was no point carrying on playing as he was still suffering problems of hearing and balance following the accident. On 7 September 2009, he came out of retirement, joining seventh-tier club SC Herford, and playing his first match against SC Verl II; in November, however, only two months after, he retired for the second and final time.