Hello,
it is definitively a problem with the extensions in /System/Library/Extensions/
As suggested in some posts, I have firstly erased all extensions but then the reboot gets stuck in "resetting IOcatalogue".
Then I have erased only those extensions that seemed to me not related to my mac (probably not signed), or to devices that I am not using anymore. In my case these were the Huawei extensions (Huawei*.kext).
So here's what to do:
1. Use cmd + R to boot into Recovery Mode
2. From utilities menu, open the terminal
3. In terminal type:
cd /Volumes/<your harddrive>/System/Library/
example: cd /Volumes/Macintosh\ HD/System/Library/
4. create a directory to store the extensions you think are not supported (better move them than erase them .. in case they are actually supported)
mkdir Unsupported
5. Go to the extension directory
cd Extensions
6. Move the extensions you think are not related to your mac or are not supported (and probably non signed) to the Unsupported directory
mv <the extension>.kext ../Unsupported
example: mv Huawei*.kext ../Unsupported
7. Reboot in verbose mode (by pressing cmd+v+power)
8. If it still get stuck then you might need to remove more undesired extension