In 1974 he was selected to be the local party chairman of the Austrian Freedom Party (FPÖ) in Gurk; two years later he became its district party chairman. In 1979 he was elected to the Gurk local council, and was selected immediately to be vice mayor, a position he retained for twelve years. During this time period, he was also elected to the state parliament (Landtag) of Carinthia, in which he served for the FPÖ from 1982 through 1994. In 1991, he was elected mayor of Gurk with 53.4% of the vote, and also remained a member of the Landtag. In 2004, he was sent as a representative of Carinthia to the Federal Council of Austria (the Bundesrat), where he again sat with the FPÖ.
In the Federal Council, Kampl was closely allied with controversial FPÖ leader Jörg Haider, who he had helped propel to the party leadership in 1986. Kampl calls himself "very homeland-connected" and nationalist. When the FPÖ split in April 2005, Kampl followed Haider to his new party, the Alliance for the Future of Austria (BZÖ).
Controversy erupted when Kampl made an April 19, 2005 speech against the rehabilitation of Austrian armed-forced members who had deserted during World War II. He argued that the deserters were "assassins of battle comrades", and criticized what he called the "brutal persecution" of Austrian Nazis after 1945, saying that "more than 99% of Austrians" had been members of the Nazi party. He was heavily pressured to resign, and agreed to do so on April 28. However, about a month later (on May 29), he said he stood by his views (although he said he may have phrased them differently in retrospect), and would not in fact be resigning. He attributed his decision not to resign partly to what he called the "provocative" manner in which Federal Council President Georg Pehm (a Social Democrat) had demanded he do so. He did, however, resign his membership in the BZÖ, saying he did not want to burden the party with the controversy.
Kampl's backtracking on resignation caused an even bigger controversy because, coincidentally, he was scheduled to take over the six-month rotating presidency of the Federal Council on July 1. Left-leaning lawmakers demanded that Chancellor Wolfgang Schüssel intervene to prevent Kampl from assuming the presidency of the upper house, and threatened a walkout if he was allowed to do so. In the end, the Federal Council resolved matters itself by passing a constitutional amendment, informally labelled Lex Kampl (Latin for "Kampl's law"), allowing the Council to, by a two-thirds vote, replace anyone scheduled to take over the rotating presidency with a different member of the same party. The amendment was agreed upon by all four main parties (including the FPÖ and BZÖ) and passed unanimously, although BZÖ member Roland Zellot left the chamber before the vote. The amendment entered into force on June 25, just in time to prevent Kampl from becoming president of the Council.