The reason Moses was forbidden from entering the Promised Land is recorded in Numbers 20:7-12. When the Israelites were at Kadesh and complained about the lack of water, God instructed Moses to speak to a rock before the assembly, and it would pour out water. Instead, Moses struck the rock twice with his staff in a moment of frustration and anger, saying, "Listen, you rebels, must we bring you water out of this rock?"
Water did flow from the rock, but God told Moses and Aaron: "Because you did not trust in me enough to honour me as holy in the sight of the Israelites, you will not bring this community into the land I give them." Moses' act of striking the rock rather than speaking to it, combined with his angry words that took credit ("must we bring you water"), was an act of disobedience that failed to sanctify God before the people.
While Moses did kill an Egyptian earlier in his life (Exodus 2:12), that event led to his flight to Midian, not to the prohibition from entering Canaan. He did marry a Midianite woman (Zipporah), but this was not cited as a reason for exclusion. He never refused to speak to Pharaoh, though he initially expressed reluctance. The specific sin that barred Moses from Canaan was striking the rock in anger at Meribah.