Some of both. You have to take the "core" linguistics courses that are mostly theoretical, like phonetics, phonology, morphology, syntax, and semantics, but then you also take more practical courses, like psycholinguistics, child language acquisition, and labs and stuff.
Some of my favourite courses have been:
Ling 2LC3 (Historical linguistics) - This is where you learn how language has changed over the years. You learn about typical patterns and things like that. The prof is awesome, and extremely knowledgeable, and the evaluations are very simple. However, if you're not someone who likes to listen to a rambling genius, you might not love this one.
Ling 2PS3 (Psycholinguistics) - This is where you learn about how we understand language. It's a really interesting course, where you basically look at the findings of a bunch of experiments. The prof is really nice, and really cheerful.
Ling 2SY3 (Syntax) - This course is all about sentence structure. It is really fun if you enjoy patterns and things like that. The prof is extremely intelligent, but some people find her intimidating. I think she's awesome.
Ling 3C03 (Child language acquisition) - I'm in this course right now. It is about how children acquire language. You learn about how amazing this process is. It blows my mind. Same prof as Psycholing.
Some of my least favourite have been:
Ling 2D03 (Research methods) - Although very useful, this class is quite boring for obvious reasons. The prof is really nice though.
Ling 2DD3 (Statistics for language research) - Same as 2D03
Overall, I've pretty much loved all the courses. There are many that I didn't mention because they didn't quite make my favourites list, but they were amazing nonetheless.
Feel free to ask me any more questions that you have.
I hope I was helpful.