They differ.
Mouse::isButtonPressed tests the current state of that button whereas Event::MouseButtonPressed informs the program that the button has been pressed in the past.
Granted, that "past" is so short that it's still considered "now" but processing that event may be delayed if your program spends too long in a function, for example, or the OS is slowed for some reason.
Events, though, are not useless, of course. Using the mouse button action as an example, if the application
is delayed, the operating system will deliver the mouse pressed event a little bit late. However, since the application is being delayed, the real-time test of isButtonPressed might not be called during the time that the button is pressed so can miss the actual press.
Generally, events are for single shot things (clicks, moves etc.) and real-time state testing is for constant/held actions (holding button down and maybe the duration matters or "firing" constantly without having to click each time).
For more information on events, you can read
the SFML information about events and for more information on real-time input, you can read
the SFML information on real-time input.