As has been mentioned, there are three main tunnels that cross Barcelona, from the coast inland:
- Sants - Pl Catalunya - Arc de Triomf - Sant Andreu Arenal -or- Clot Aragó (Iberian gauge)
- Sants - Pg Gràcia - Clot Aragó -or- Estació de França (Iberian gauge)
- Sants - Sagrera (standard gauge)
The first of these is only used by local trains (and three regional trains a day to Lleida via Manresa), all of which are EMUs.
The last one is only used by high speed sets, all of which are EMUs (AVE 103s) or SNCF sets.
The middle one links with the Iberian gauge mainlines both north (via Granollers) and south (via Vilanova) of Barcelona and is the only one you'll see loco hauled stock on. The only real loco-hauled stock these days are the Talgos to Seville and Murcia (via Valencia) and the hotel trains to Galicia (and Granada, although this doesn't run at the moment as the lines in Granada are being re-built for AVEs), although only the Seville Talgo runs in service between Estació de França and Sants. There are also Euromed sets running in service, these are Talgo class 130s which are loco hauled but form fixed sets, some of which run in service between Estació de França and Sants.
Until the high speed line between Barcelona and Perpignan opened there was much more (trains from Montpellier to Cartagena, a sleeper from Portbou to Madrid) but since around 2015 there haven't been any non-high speed intercity services crossing Barcelona (as opposed to terminating or starting in the city and running through the tunnels).
There are some interesting pictures at Sants and other stations at
http://www.trenscat.com/renfe/barcelonasants_ct.html, especially towards the bottom. That site is also full of information about the network and the trains that run on it.