I remember one of the best workers I ever had. I fired him.
This guy was a barn-burner. He was at work every day, early most of the time. He worked every minute he was there, and he was fast and accurate. On top of that, he took short breaks and got back to work fast. I never checked, but it wouldn't surprise me if he got as much work done as two other people, and his work was good work.
The problem was, he was disruptive. You know the term "loose cannon?" It comes from the days the Navy used sailing ships, and cannons mounted on wheels. Those cannons were controlled by men pulling on ropes. If a cannon got away from its crew, you had hundreds of pounds of iron and wood crashing around the deck, wherever the roll of the ship took it. You can imagine the chaos and damage.
My guy was a loose cannon. He knew he was good, so he thought he was essential. He was contemptuous of everyone else. He wouldn't listen to his supervisor. He didn't care what another team member might need from him at the moment. He didn't even care what company policies or government regulations said, he did his job his way. In then end, he broke my team back into a bunch of individual workers. No cooperation, no shared goals, and a lot of back-biting. Everyone was looking out for number one.
When you have a person like that, send him or her down the road. The longer you wait, the more work and time it will take to rebuild the team afterward. And the sooner you do, the more powerful the message that being a team player is more valuable than being an outstanding loner.