An easy way to display external subtitles with DVD movies in VLC, is to copy and rename the subtitles after every VOB file of the movie (usually VTS_01_?.VOB).
So you would end up with several copies of the same subtitles file, named something like VTS_01_1.LANG.srt, VTS_01_2.LANG.srt, VTS_01_3.LANG.srt, etc. Then you would add the VOBs to your play list, and the subtitles will be loaded automatically, as VLC always searches for subtitles files containing the file name of the video (of any format).
Note, however, that using the same subtitle file won't work with other video formats, since you would've to split and re-synch the subtitles for every video file, while it seems every VOB stores the total movie time.
Having said that, when I play a DVD with external subs, VLC will suddenly start displaying subs for a few milliseconds, making it impossible to read, sometimes even to see... I've seen this problem reported on the VLC forums long ago, though reading this thread gives me the impression some of you have no problems with external subs + DVD movies in VLC. Is that right?
In any case, what I use instead is Media Player Classic Homecinema, though with it you've to switch from overlay to VMR rendering, which gets my old abacus sweating and seems to skew subs a little, and you've to load them by hand. But there ain't such a thing as a free meal.