Electrification poses a promising low-carbon or even zero-carbon transportation solution, serving as a strategic approach to reducing carbon emissions and promoting carbon neutrality in the transportation sector. Along the transportation electrification pathway, the goal of carbon neutrality can be further accelerated with an increasing amount of electricity being generated from renewable energies. The past decade observed the rapid development of battery technologies and deployment of electricity infrastructure worldwide, fostering transportation electrification to expand from railways to light and then heavy vehicles on roadways. In China, a massive number of electric buses have been employed and operated in dozens of metropolises. An important daily operations issue with these urban electric buses is how to coordinate their charging activities in a cost-effective manner, considering various physical, financial, institutional, and managerial constraints.This paper addresses a general charging scheduling problem for an electric bus fleet operated across multiple bus lines and charging depots and terminals, aiming at finding an optimal set of charging location and time decisions given the available charging windows. The charging windows for each bus are predetermined in terms of its layovers at depots and terminals and each of them is discretized into a number of charging slots with the same time duration. A mixed linear integer programming model with binary charging slot choice and continuous state-of-charge (SOC) variables is constructed for minimizing the total charging cost of the bus fleet subject to individual electricity consumption rates, electricity charging rates, time-based charging windows, battery SOC bounds, time-of-use (TOU) charging tariffs, and station-specific electricity load capacities. A Lagrangian relaxation framework is employed to decouple the joint charging schedule of a bus fleet into a number of independent single-bus charging schedules, which can be efficiently addressed by a bi-criterion dynamic programming algorithm. A real-world regional electric bus fleet of 122 buses in Shanghai, China is selected for validating the effectiveness and practicability of the proposed charging scheduling model and algorithm. The optimization results numerically reveal the impacts of TOU tariffs, station load capacities, charging infrastructure configurations, and battery capacities on the bus system performance as well as individual recharging behaviors, and justify the superior solution efficiency of our algorithm against a state-of-the-art commercial solver.