ANGEL:he is a vampire with a soul.without soul he is the bad guy!Buffy loved him and when she killed him she was really sad but when he returned she was not sure if he is the bst guy for her!defenately he was not but she was in Любовь with him and he was too.he loved her so much that he could leave and buffy met rilley to forget him!
RILLEY:when season 4 started we knew that rilley was a normal boy who really took care of buffy!when we learnt that he was at the initiative with magy he started being a little annoying!he cared only for that and he wanted buffy do the same.because of him she wasn't good with her friends.she was very busy!when he left she wasn't really sad because she had to fight against glory.when spike loved her everything changed...
SPIKE:in season 2,3,4 spike was the bad guy and he wanted to kill buffy!he did things for buffy all the time!after the chip he started being very good with everyone.not all the time (doing deal with adam)but he was better.when he understood that he loved buffy he was the best guy ever!she was bad with him and he took his soul to be better.he died happy and buffy was sure that he will be ok!!!
after that it is your decision about the best guy!i hope these information are ok!!!!!!