Problem: After login, the game screen goes black, and after a moment Windows reports that the dndclient.exe has unexpectedly crashed.
Solution: After looking around at the various issues/solutions being reported here (and admittedly, everybody's is a little different) I renamed my UserPreferences.ini file to UserPreferences.bak and then restarted the client.
The game got past the usual crash point, and started up fine.
I've since printed out both the old and the new .ini and compared them side by side. Below are all of the places where they differ. The values shown as (old) are from the .ini file that crashed the client; the values shown as (new) work.
DISPLAY
1) SyncToRefresh=True (old), SyncToRefresh=False (new)
RENDER
2) MemoryUsage=0.50 (old), =0.30 (new)
3) EnvironmentStencilShadows=True (old), =False (new)
4) VideoPostEffects=True (old), =False (new)
5) SurfaceReflections=High (old), =Low (new)
6) BlurFileterQuality=High (old), =Medium (new)
7) AtmosphericsDetail=High (old), =Medium (new)
8) BloomIntensity=0.60 (old), =1.00 (new)
9) LandscapeStaticObjectShadows=Low (old), =Medium (new)
10) FrillDistance=High (old), =Medium (new)
11) StencilShadows=Low (old), =Medium (new)
SOUND
12) MaxPlayingSounds=64 (old), =62 (new)
13) EAXEnabled=True (old), =False (new)
In some cases my old .ini file had higher quality render settings than the new .ini file, and it was working fine. I updated both my nvidia drivers and my creative sound drivers, and reinstalled (Repair option) the game overnight, and it was still crashing. Note that reinstalling the game did NOT overwrite my old userprefs.
At this point I personally suspect the problem is the sound drivers (I installed a new USB audio device the other day which might have tweaked something.)
When I get home from work, I'll try switching the values one at a time to isolate the culprit.
If the "Order of Operations" of the .ini file matters, then I should note that the two files do not share the same order.
Hopefully this helps some folks. Bottom line: Rename (or delete) your old UserPreferences.ini file and fire it up again.