Although I'm not necessarily recommending it, Amtrak has three daily direct trains in each direction between Eugene and Tacoma, which is about a forty-minute drive from Bremerton.
Travel time on the train is five and one-half to six hours, depending on the particular train.