When comparing XFWM vs bspwm, the Slant community recommends bspwm for most people. In the question“What are the best window managers for Linux?” bspwm is ranked 9th while XFWM is ranked 10th. The most important reason people chose bspwm is:
It has a low footprint.
Ranked in these QuestionsQuestion Ranking
Pro Integrated compositing manager
XFWM has an integrated compositing manager, though it does have screen tearing.
Pro Left-half/Right-half window snapping
XFWM has a built-in option for window snapping.
Pro Can choose to open windows at center of screen or edge
Pro Great and beautiful theme support
It's very easy to create themes.
Pro Lightweight and desktop independent
Pro Very lightweight
It has a low footprint.
Pro Drag&drop / Mouse support for resize/move
You can resize, switch panes, and resize tiles via the mouse.
Pro Very flexible
The keyboard shortcut are handled by another module so it's easy to use other inputs. The configuration is also simple.
Pro Based on binary space partitioning
The windows tiling is handled as the leaves of a full binary tree. This makes it easy to partition as you like.
Pro Open source
Pro Live configuration updates
No need to restart for updating configurations.
Pro Simple, adheres to the UNIX philosophy
Configuration takes much less work than in similar window managers. Hotkey binding is handled by a separate utility, sxhkd.
Pro Adherent to the Linux philosophy: Do one thing and do it right
Pro Simple interface
All actions of the window manager (like opening or resizing a window, changing the workspace, etc.) are handled by a program called bspc, which communicates with bspwm over a socket connection. The config file is just a shell executable making calls to that program. This makes it very easy to write your own scripts to handle bspwm's behavior.
Con Composite manager has screen tearing
The included composite manager in XFWM has screen tearing.
It should be mentioned that there's a workaround though:
compton --backend xrender --vsync opengl
Con Poorly documented
Compared to something like i3 for example, a user following through i3's documentation is basically guaranteed to get a working desktop suited to their needs. Setting up bspwm is much more of a headache due to developers assuming things are clearer than they are.
Con Lacks transparency support
Like most window managers there is no built in compositing, which means no transparencies.