See those green spots on the floor? Make sure something (dynamite, dynamite arrow...) explodes on it at the moment Magruder walks over it. It will unleash flames which will hurt him. If you're running out of dynamite, you can find some at the edges of the level.
When he takes enough damage he will go and stand on a platform, shooting you and throwing dynamite at you from time to time. Shoot the dynamite out of the air everytime he throws it in order to beat him.
Also forgot to tell you: always make sure that there is an object between you and Magruder. Those blasts of his shotgun really hurt!