Main Township is located just south of the center of Columbia County and is bordered to the north by the Susquehanna River, lined by bluffs. The unincorporated community of Mainville is in the center of the township. The ridges of Nescopeck Mountain and Catawissa Mountain cross the township just south of Mainville, separated by a water gap formed by Catawissa Creek.