Azaism: I was also having a problem getting Diablo 1 Classic to boot on my Windows 10 machine and want to chime in with something helpful:
I normally have my refresh rate at 120hz, but then I remembered that other games have given me problems trying to fullscreen at 120hz. So I changed my refresh rate to 60hz, and yes that fixed Diablo 1 Classic as well.
But now the issue I have is that the game screen is tiny. Perhaps there's a setting in the Nvidia control panel or my TV that can force the 640x480 resolution to fill the whole screen.
EDIT: I found it. On the Nvidia control panel under "Adjust desktop size and position", make sure "Perform scaling on" is set to GPU instead of Display.
EDIT 2: Nevermind. I tried to play again today and even with my refresh rate set to 60hz, the game won't boot properly. I have no idea what it is cause nothing else has changed.
EDIT 3: Ok, I figured it out. Go to the folder GOG Games\Diablo and right-click Diablo.exe and choose Properties. Under Compatibility, check the boxes for Compatibility Mode (Windows XP Service Pack 3), Reduced Color Mode (16-bit), and 640x480 resolution. After doing this, I have noticed I can leave my refresh rate higher than 60hz and the game still works fine, so that's nice.