I've done a couple. Basically, theres a wood support structure inside with plywood skins on the sides and trim pieces on the superstructure. Not hard to do. We also have a couple of trestles that were much more involved in their construction. The first one is a basic concrete arch bridge modeled after the York Blvd. bridge over the Pasadena Freeway near Los Angeles.
This was connected to a "stretched arch" bridge by a viaduct. The bents on the viaduct are 1x3 wood cores with 1/4" plywood facings and mouldings for the sides. The track support is HDPE lumber in a "ladder" style sub-roadbed which was bent to shape during assembly. Then girders were attached between the bents.
The lower trestle was scratch built "upside down" -- i.e., we set the stringers at the right height and curvature, then installed the bents which were made in a jig and shimmed up. Scenery was put over the bases. This trestle is a 48" radius (O-96) curve approximately 2 feet tall and has over 1,500 nut/bolt/washer castings installed on the cross braces (a lot of pin-vise/drill work). It took the two members in charge of the project about 18 months to complete the bridge, though we could run trains across it much sooner.
The upper trestle deck (plywood) was set in place and the bents constructed from steel angle, wood and styrene. The bridge girders are resin castings we made (same ones used on the viaduct at the other end of the building). We still haven't gotten around to ballasting the deck.