you can easily http://www.gemboxsoftware.com/document/articles/c-sharp-vb-net-create-write-word headers and footers for http://www.gemboxsoftware.com/document/articles/c-sharp-vb-net-docx format with this http://www.gemboxsoftware.com/document/overview library.
// Use the component in free mode.
ComponentInfo.SetLicense("FREE-LIMITED-KEY");
// Create a new empty document.
var document = new DocumentModel();
// Add three pages to the document content and different headers / footers for first, even and all other pages.
document.Sections.Add(
new Section(document,
new Paragraph(document,
new Run(document, "First page content"),
new SpecialCharacter(document, SpecialCharacterType.PageBreak),
new Run(document, "Second page content"),
new SpecialCharacter(document, SpecialCharacterType.PageBreak),
new Run(document, "Third page content")))
{
HeadersFooters =
{
new HeaderFooter(document, HeaderFooterType.HeaderFirst, new Paragraph(document, "First page header")),
new HeaderFooter(document, HeaderFooterType.FooterFirst, new Paragraph(document, "First page footer")),
new HeaderFooter(document, HeaderFooterType.HeaderEven, new Paragraph(document, "Even page header")),
new HeaderFooter(document, HeaderFooterType.FooterEven, new Paragraph(document, "Event page footer")),
new HeaderFooter(document, HeaderFooterType.HeaderDefault, new Paragraph(document, "Default page header")),
new HeaderFooter(document, HeaderFooterType.FooterDefault, new Paragraph(document, "Default page footer")),
}
});
// Save the document to a file.
document.Save("Document.docx", SaveOptions.DocxDefault);