Yes I know, but for some reason I don't like boost and I am trying to avoid it. That's why I'm using SFML threads or mutexes instead of boost ones
I think, the SFML network and thread functionality is more straightforward and easy to use, but allows probably less custom configurations. Generally, SFML aims at being beginner-friedly, while Boost contains many parts that require an advanced C++ knowledge. But several things are easy to use, nevertheless.
However, you shouldn't throw Boost into a single pot, it consists of different libraries written by different authors. Anyway, what exactly doesn't please you at the Boost libraries you've worked with up to now?
But without all those compiler dependent macros there will be no boost
What do you mean? Every library that wants to implement platform-dependent functionality beyond standard C++ in a portable way needs to use the preprocessor for conditional compilation. Even SFML.
Additionally, Boost tries to workaround some compiler bugs to support more, especially ancient compilers. For this task, it uses macros, too. Apart from the libraries where macros are just the most user-friendly way to provide a feature (consider BOOST_FOREACH or BOOST_STATIC_ASSERT). I don't know why this should be bad.