"Several people" were killed on Friday when a man disguised as a police officer opened fire at random at a youth Labor Party summer camp near the Norwegian capital of Oslo, Norwegian TV said.
The state NRK TV channel said the shooter has been detained. It also said witnesses described him as looking "Norwegian".
Norwegian Prime Minister Jens Stoltenberg arrived at the camp, on the island of Utoya, earlier on Friday.
"We now have reports of a serious situation there - a critical situation on Utoya," Stoltenberg, who was not harmed, told Norway's TV 2 after the attack.
State broadcaster NRKI said "several people" had been shot.