In this paper we consider the following problem. An angler buys a fishing ticket that allows him/her to fish for a fixed time. There are two locations to fish at the lake. The fish are caught according to a renewal process, which is different for each fishing location. The angler's success is defined as the difference between the utility function, which is dependent on the size of the fish caught, and the time-dependent cost function. These functions are different for each fishing location. The goal of the angler is to find two optimal stopping times that maximize his/her success: when to change fishing location and when to stop fishing. Dynamic programming methods are used to find these two optimal stopping times and to specify the expected success of the angler at these times.