He said: "We learned the bitter lesson that with no opposition, there is no freedom.
"Here [in the European parliament] there is only one single alternative, and those who dare think about a different option are labelled as enemies of European integration."
Klaus said that while there was no alternative to EU membership for the Czech Republic, EU integration could take different forms.
He also told members of the 27-nation bloc that their parliament intervened too much in people's lives, and said the EU should concentrate on offering prosperity to Europeans, rather than closer political union.
Hans-Gert Poettering, president of the European parliament, responded to the controversial speech.
"Thank God we live in a European democracy in which everybody can express his or her own opinion... In a parliament of the past I am sure you would not have been able to give this speech," he told the assembly, earning applause.
Ivo Belet, a Belgian politician, said: "I have never experienced a situation where the presidency of the European Union... compares the EU with the Soviet Union."
The Czech Republic currently holds the rotating EU presidency, but Klaus refuses to fly the bloc's flag over his official seat, saying his country is not an EU province.
On Wednesday, the lower house of the Czech parliament approved the EU's reform treaty, an important step towards its full ratification.
Government and opposition deputies voted by 125 votes to 61 in favour of the Lisbon treaty, which aims to streamline the EU's decision-making in the wake of the expansion of the bloc.
The treaty has yet to be approved by the Czech upper house, where the president's views on the EU have much support, and where it could face weeks or even months more of delays.
Klaus has refused to say whether he would sign the treaty, saying: "I am not really ready to answer, a chess player does not announce his next moves."