Sounds like End Of Days 1999. Gabriel Byrne plays the Devil.
Opening scene: Restaurant, evening. A young man with black hair excuses himself from the table and enters the bathrooms. A blur follows him, and appears in the bathroom with him. It enters him and he shows a visible change in character, leaving the restaurant soon after.
The main character is a man of about thirty, tall and moderately built with short brown hair. He is still grieving the loss of his partner and two young girls after they were murdered a few years (?) earlier. (Years? Months?).
The character with the black hair, now the emobodiment of Satan, approaches this man in his home and offers to bring back the man's family if he will join him. The main character is shown a vision of what happened the night his family were murdered. However, he refuses, and throws Satan out of the window. He lands with a crash on a car below; however, when the main character looks down Satan is gone.
The plot involves a girl who the devil needs to sleep with in some sort of ritual.
Fight scene, underground train system, the body Satan is inhabiting is reduced to only a head and a torso. He leaves this body, becoming a blur again, and takes over the main character's body. The main character, not wanting to give in to Satan, decides to kill himself. This happens in a church. He spears himself on the sword held by a statue of an angel, and as he dies he sees his family in a vision.
Sounds like End Of Days 1999. Gabriel Byrne plays the Devil.
OMG!!! Thank you so much. That one has been bothering me for several YEARS nowlol End of Days it is.