Preheat the oven to 350°F. Grease a 9x13-inch baking dish.
Cook the spaghetti according to package directions to al dente consistency. Drain and set aside.
In a large skillet over medium-high heat, cook the ground beef for 6 minutes, until browned, using a spatula to break up any large clumps.
Into the skillet, stir in the taco seasoning and water. Bring to a boil then reduce the heat to a simmer. Cook for 3 minutes, stirring occasionally until liquid is reduced.
Remove from heat then stir in the black beans, tomatoes, green chiles, 1 cup cheese, and salsa.
Add the spaghetti back into the cooking pot then pour in the taco mixture. Toss to distribute the mixture evenly. Transfer to the prepared baking dish.
Sprinkle with the remaining 1 cup of cheese.
Cover and bake for 20 minutes. Uncover and continue baking for an additional 5 minutes, until the cheese is melted then serve hot.