Event Handlers are the preferred and recommended mechanism for implementing Inter-Portlet Communication (IPC) in modern portal frameworks. They provide a decoupled, event-driven architecture where portlets can publish and subscribe to events without direct dependencies. Backing files are for lifecycle management, onRefresh is a specific lifecycle method, and listenTo portlet property is an older, less flexible approach.