A train leaves the station traveling west at a constant rate of 45 mph. An express train leaves the same station 1 hour later heading west on the same route, traveling at a constant rate of 60 mph. How many hours will the first train have been traveling when the express train catches up to it?

A. 3
B. 4
C. 5
D. 6

Let the time it takes for the express train to catch up to the first train be $t$ hours. In that $t$ hours, the first train will have traveled $45t$ miles, and the express train will have traveled $60(t-1)=60t-60$ miles (since the train left 1 hour later).

When the express train catches up to the first train, they will have traveled the same distance. So, we have the equation $45t=60t-60$.

Solving for $t$, we get $15t=60$, or $t=4$.

Therefore, the answer is $\boxed{\text{(B) } 4}$.