- Dusan Vlahovic (42')
- Aleksandar Mitrovic (54')
Serbia finished the campaign on 13 points from six games, three ahead of second-placed Norway, who would have won the group with a draw. Slovenia finished third on six points, with bottom side Sweden relegated to League C on four points.
Norway's Erling Haaland almost got the home side off to a perfect start but his first-time shot after 20 seconds was brilliantly saved by Vanja Milinkovic-Savic, setting the tone for a frustrating evening for the striker.
Mitrovic, already Serbia's record scorer, doubled his side's advantage nine minutes into the second half with a typically precise finish from Ivan Ilic's pass, and he almost netted a second with a header in the 76th minute.
Roared on by a packed Ullevaal Stadium, Norway did their best but lacked the guile to break down Serbia until Haaland had another chance late on, but once again Milinkovic-Savic thwarted him.
"We took control of the game and deserved to win. We've got a healthy group here who breathe as a team should," Serbia coach Dragan Stojkovic told Arenasport.
Goalscorer Vlahovic said his side were pleased with promotion and were now looking forward to more success.
"We're delighted to be in the top tier. We are thriving under Stojkovic and his attacking style," he said.
- Antonio Miguel Mateu Lahoz