I have recently studied Thomas’ lecture notes on tree-decompositions on graphs, which gives the reader an insight into the concepts of tree-decomposition, tree-width etc. It had a understand-through-solving-problems approach that I believe is very nice and instructive:

http://people.math.gatech.edu/~thomas/PAP/treenotes.pdf

But the interesting part was that once I saw the problems of the 2nd assignment of approximation algorithms, I found that one of the optional problems is straightforward as the idea was covered in the notes. Specifically, problem 4(b) is easy if you study paragraphs C5-C9 of the notes.