“I’m speechless!” the 21-year-old striker told Norwegian television, before adding: “It’s the first time I’ve played for a sold-out Ullevaal. And to win against Sweden in the last match of the season, it’s beautiful.”
Haaland, who is heading for Manchester City from Borussia Dortmund this summer, gave Norway the lead in the 10th minute heading in a near-post cross.
He added a penalty in the 54th minute after Hjalmar Ekdal fouled Alexander Sorloth.
It was Haaland’s 20th international goals in 18 Norway appearances.
Sweden replied eight minutes later when Emil Forsberg smashed home a pass from Dejan Kulusevski.
Haaland then crossed for Sorloth to head home and restore the host’s two-goal lead after 77 minutes.
Swedish skipper Forsberg was not impressed by the goals his team conceded.
“It is too easy to score against us,” he said.
Viktor Gyokeres gave the Swedes brief hope by rifling home a shot five minutes into added time.
“This tasted great,” said Norway coach Stale Solbakken.
“Sweden are better offensively than defensively at the moment…I think we were the better team but it was important to get the early goal. It gave us a mental boost.”
The victory gave Norway 10 points after four matches in Group B4. They lead second-place Serbia, who play away to Slovenia later Sunday, by four points and Sweden by seven.