In the early days, say, Windows 95, it did BSOD a lot for seemingly random reasons.
Nowadays, with the experience of handling dozens of Windows machines both server and client, I can tell you with a high degree of confidence that BSODs happen only when hardware is dying or a driver is buggy. The flavors I can confirm this for go from XP SP3 to Server 2008, passing through Server 2003, Vista and 7.