Yo he probado las dos, y sin dudas SFML. Te enumero las ventajas de SFML:
- SFML es para C++, mientras que SDL está en C. Por lo que no hay objetos, operadores, etc...
- SDL es una librería software, mientras que SFML está montada sobre OpenGL, de modo que se usa aceleración hardware.
- SFML se puede combinar con OpenGL, es más, la librería te pone muchas utilidades para ello.
- En mi opinión, tiene más herramientas y facilidades que SDL.
Eso si, el enfoque es un pelín diferente. Pero cuando te acostumbres lo llevaras con soltura y te darás cuenta de lo comodo que es, por ejemplo el patrón textura-sprite:
- Textura: Imagen residente en la vram, es un simple contenedor, no se pueden dibujar.
- Sprite: Dada la referencia a una textura, definen operaciones sobre ella (posición, rotación, escalado...). Los sprites si pueden ser dibujados, varios sprites pueden compartir una misma textura sin problemas (de ahí su gran utilidad).
Este patrón se repite por toda la librería en diversas utilidades (sonido, texto...) y hay que acostumbrarse a ello.