I'm going to actually say that the accepted answer, now in 2016, is not necessarily correct - for several reasons:
1) HTTP 2.0 is becoming the most used version of the protocol in industrialized countries outside of China (thanks, old IE), and will soon be considered an industry standard (if not already). This means that support for connection multiplexing and header caching eliminates the need to combine files into one; In fact, at the Fluent Conference in SFO last year, the HTTP2 demonstrator actually claimed that splitting things like CSS and images into multiple files would be really better because of the superior HTTP ability to use more bandwidth due to longer connection times.
2). Due to all this front-end automation in CSS, such as SASS and LESS, you are likely to violate the IE 5-9 4095 selection restriction. This is a slightly known mistake, since until now people rarely exceeded this number of selectors in one sheet; however, on corporate sites this is becoming common practice. In principle, all sheets with more than 4095 selectors will still be read, however, browsers are simply silent after that to make any rules.
This does not mean that minimizing to one file is bad, but another approach to splitting is not really bad anymore, and in fact in some cases it is necessary or even better, depending on the needs of the project.
source share