@kettch: I would say that it would need to be configurable for different user at moderate level.
To that end, a base file such as HTML, DOC, PDF, or ? that would serve as the basic outline of the form letter that is 'marked up' for static (Name, address, phone#, email, ect) and scaleable data such as an iventory list.
The end user would have control over the base file to make changes as the see fit and the program (windows form C#) would handel the 'mark up' passing of data.
I have used word in the past but would run into speed, file locking, and office version issues. I don't want to force some one to buy a specific version of word to use my product.
I have used PDFs in the past as well but, this approach tends to be hand-cuffed to third part controls and overly complicated.
They ability to merge data from a XML file into a 'marked-up' HTML file would be great but the way I have found to do that is treating the files as if they were raw text files so there is no point there.
These are just the raw basics I have thought up so far.