My grandfather a veteran of World War II always told incredible stories.
Correct: D
Option D is the most accurate. Both commas (Option A) and em dashes (Option C) can be used to set off non-essential or appositive phrases like 'a veteran of World War II.' Commas are the most common and neutral choice, while em dashes provide a stronger separation or emphasize the enclosed information. Both are grammatically correct in this context. Option B is incorrect because it only uses one comma, not fully enclosing the non-essential phrase.