DOSBox is essentially an emulator, which improves its method over Microsoft's compatibility modes. It creates an emulated environment that replicates the exact conditions of a fully loaded Intel x86 PC, and deals with all the drivers from within that environment. Their official site claims that this should work for all DOS applications, though their focus is on games.
Let the user beware: there is a downside to using DOSBox. It is not for the timid, as it will require the use of the command line to configure. This can be tricky by itself, but some games will require special tweaking via additional settings, also from the command line. DOSBox can also crash at bad times, especially since legacy programs often had no autosave features. On several of the DOS games I tried, especially some of the old interactive fiction games that included graphics and cued sounds, a crash resulted in the loss of data. Overall, however, it was stable and allowed me to enjoy some classic games.