GRAPHIC WARNING: Some viewers may find details and video confronting.
The attack happened at the Silver Sands Tavern in Mandurah just before 11pm on Thursday.
It is understood a private wake was being held when a woman was refused entry.
She returned a short time later with two men and another woman when a fight broke out.
Three patrons were attacked by a man allegedly brandishing a weapon.
Detectives and forensics scoured for evidence on Friday morning and combed through the blood-stained scene.
A 39-year-old and 60-year-old man are in Royal Perth Hospital’s state trauma unit after undergoing facial and hand surgery.
A 32-year-old man is also receiving treatment at Fiona Stanley Hospital.
Two men have been charged and are due to appear in court tomorrow.