I just finished a 2 hour session with no crash and am pleased about that.
I made two changes at the same time so I don't know which one helped more, but I'm not about to undo either of them until/unless the game starts crashing again. Your mileage may vary. (Note that I'm using Win XP.)
- Right click on the shortcut for King's Bounty. Select "Properties." On the "compatibility" tab, check the box for "Turn off advanced text services for this program." Click OK.
- Find the GAME.CFG file in the ..\Steam\SteamApps\common\King's Bounty - The Legend\data folder. Open the file with a text editor (Notepad) and change the "setf ~windowed 0" line to read "setf ~windowed 1" instead (change the 0 to a 1).
/cross fingers