You need to learn both. At the beginning when you start to learn then you have to learn responsive design by using @media. By using this you will understand the process of working. Before you move to a framework you need to learn custom coding very well. This is the common rule to learn to code.
When you think that you are ok with @media then you can start learning bootstrap. Bootstrap is a very popular HTML framework. Its follow its own grid system. If you want to learn bootstrap you need to know the grid system very well which is very easy. It will help you to reduce your effort.
To handle big projects you need an organized coding with a common coding structure and that was why clients prefer bootstrap. Here you can make an HTML structure by using Bootstrap grid. Not only grid it will help you by providing some common elements like navbar, tab, accordion and so on.