If our game crashes frequently (especially when entering the town view), please try different compatibility modes, starting from Windows 95 (you can change these in the Properties of the game's shortcut, under the Compatibility tab).
If that doesn't help: after starting the game press Alt+Ctrl+Del, start Task Manager, go to Processes tab, right click Heroes3.exe and set affinity to single core.
For a permanent solution:
Open Notepad and copy this line:
start /affinity 1 Heroes3.exe
into the file, then save it as HOMM3.bat in the same folder where Heroes3.exe is located. This will create a script that starts the game with single core affinity for you. Double click the newly created file to start the game.