Aberdeen 1 Celtic 2: Late Van Dijk winner sends 10-man visitors top
Ronny Deila's men, who had captain Scott Brown sent off, looked as though they would have to settle for a draw at Pittodrie after Stefan Johansen cancelled out Adam Rooney's opener for the hosts.
However, Van Dijk scored in the 90th minute to help the defending champions reach the summit of the table.
Aberdeen saw early shouts for a penalty waved away by referee Alan Muir when Niall McGinn went to ground under Scott Brown's tug.
Derek McInnes' men were ahead in the 26th minute after Celtic failed to deal with a long throw-in and Rooney scrambled the ball into the bottom right-hand corner.
The lead proved short-lived as Celtic levelled seven minutes before half-time. Anthony Stokes - back in the team after missing Thursday's 1-1 draw with Astra Giurgiu in the Europa League with illness - played a neat throughball into Johansen, who cleverly lofted the ball over Aberdeen goalkeeper Scott Brown.
After an end-to-end first half, the match continued in a similar fashion after the break, but the visitors were dealt a blow when skipper Brown received his marching orders in the 81st minute for a foul on McGinn.
But, despite the numerical advantage, Van Dijk popped up with a last-minute winner when he met Johansen's corner from the right at the back post.