In my opinion : Beatmatching is obviously extremely important - but as you said - you already know that. Track selection is also important - but any DJ can play the same 20 tracks as every other DJ is playing. Try and play something different that still sounds good. Make the music your own - this is what I think will make some DJ's more successful then others. When I play a track I try and change it - add in parts of other tracks as fill-ins, use ornamentation and turntablism skills (scratching, or a capella's or whatever), cut a different track in at an odd time where people won't expect (perhaps at the end of a build up - cut another beat in), or use the bassline from one track with the melody of another (providing you have a good enough ear to tell if they are in the same key) Keeping in mind the above - you still need to make the mix feel as though it is one peice of music. It should flow from start to finish, most of the time increase in BPM and intensity of the music from start to finish. A full DJ set should almost be like an individual track - it should have an introduction, a build up, a breakdown, a banging chorus. The only difference to a track is you wouldn't have an outro in a mix as you want to finish on a high. At the end of the day - you need to develop YOUR OWN STYLE. Whatever music you play - you need to have your own sound and your own way of making a mix. Try and play different tracks in each mix - but make the overall feel of what you are mixing the same. Thats just my 2 cents I guess - each to their own - but that's what I try and do to express myself as a dj - not just mixing one track into the next.