Matt Kenseth passed Roush Fenway Racing teammate Carl Edwards with two laps to go and hung on to win Saturday's Nationwide Series race at Charlotte Motor Speedway.