William Brown was a resident of Beaufort County, North Carolina. A local justice of the peace, Brown helped oversee the freeholders court, which heard cases involving enslaved people. Brown represented Bath in the North Carolina Colonial Assembly from 1774 to 1775 and at the Provincial Congress from 1774 to 1776. Originally a major in the Beaufort County Regiment of the North Carolina Militia, he was promoted to colonel in 1779. He also represented Beaufort County in the North Carolina General Assembly from 1777 to 1778, and 1780, as well as in the state senate from 1781 to 1783 and from 1788 to 1789. He died sometime after 1789.