Difference between 盖，修，建
盖 literally means "to cover" something (e.g., put a roof over). This character is often heard used in an oral context to describe building something, and is used in a more colloquial manner. Note that you typically use this character to onky refer to the construction of buildings or houses.

建 (to build/establish/found) and in particular 修建 (to build/construct/erect), is used in more formal contexts (e.g., writing a letter/article). The meaning is synonymous to the above. You can use 建 to refer to building more than just buildings or houses, like tunnels or bridges. After all it makes not much sense to "cover" a tunnel or bridge like you would a house, right?

While 修 by itself can mean build, it can also mean to repair/mend/decorate, depending on the context it is used in.

兴建 refers to the construction or founding of something.

兴修 refers to the act of starting a construction

For 建筑\建设\修建\建造 the specific nuances can be tricky to explain, but they can all mean to build or construct and are synonymous to one another and can be used interchangeably as nouns (except for 建造) or verbs depending on the context. 

Some examples: You can use 建筑 as a noun to refer to an a building/establishment, the architecture/structure of the installation. 建设 can be used to refer to the new establishment of something, like a layout, setting, or even a new business or facility. 

There's really not much to say about 修建 and 建造. It might be worth noting that 建设 is more generalised compared 建造 to the others and has a larger range of use (I.e., abstract nouns/concepts, like 建设性).