Sgt. Bari Imam says 42-year-old Dustin Anderson of Nanaimo was arrested in that Vancouver Island city.
Anderson is accused of one count of second degree murder.
He is expected to appear in provincial court in Surrey on Tuesday.
Thirty-three-year-old Shaunce Poirier was found critically injured in a north Surrey neighbourhood on June 16 and died a short time later.
At the time, police said the attack was not random, but investigators have never released a motive or said how Poirier was killed.