Norwegian police say the blast was caused by a bomb and have urged people to leave the centre of the city, while a man dressed as a policeman opened fire at a camp on Utoya Island, 50 miles north of the capital city.
The explosion went off just outside the Norwegian government offices, blowing windows out of the 17-floor building and leaving injured people lying across the street.
The government quickly confirmed that prime minister Jens Stoltenberg and the cabinet were safe, according to local news agency NTB.
Stoltenberg had also been due to speak at the youth event, hosted by the Labour Party, but had not gone.
About 700 young people are on the island and the shooting went on for more than two hours, with reports of some teenagers attempting to swim away.
One further person has been shot but is alive, reports have said, while Norway’s state broadcaster has reported that one arrest has been made at the island.
The bomb blast badly damaged buildings in the area and set the oil ministry on fire, casting a huge smoke cloud over the city.
No group has yet claimed responsibility for the attacks but analysts said an Islamist militant group was likely to be behind them.