Swansea City hosted Fulham on the final day of the Premier League season, but the visitors were out to spoil the party and took a 3-0 win.
Alexander Kacaniklic opened the scoring midway through the half, firing low and hard after being played in by Emmanuel Frimpong.
In the second half Swansea laid siege to the Fulham goal but could not find a way past Mark Schwarzer, before Dimitar Berbatov eased the pressure by rounding Michel Vorm.
Urby Emanuelson wrapped up the points with a tap-in in injury time.
Read how the action unfolded with our live text commentary.
Well, that's all from me today. I'll be back with analysis shortly, but for now read all the reports and reaction right here. Goodbye!
The goal today were of a high standard - particular the first and second. Kacaniklic's low finish was out of the reach of Vorm, before Berbatov rolled the keeper and slotted in to relieve the pressure that was mounting.
Surprisingly, the possession stat is just 51-49% in favour of the Swans. I thought it would be 55% or more. In terms of shots, Swansea's 22 to seven is quite remarkable, but 10 to six on target show that Fulham were more clinical this afternoon.
In the end, given how close the table was, Fulham finished 12th. Here is the final league table in full. It's certainly is several sections this year.
Elsewhere in the league, Tottenham Hotspur got the win that they needed, but a victory for Arsenal has given the Gunners the North London bragging rights. What next for Gareth Bale? Does he give it another season or will he be looking for a move.
For Fulham, Jol's XI was largely made up of players who will be at the club next season. Frimpong and Enoh did their chances of working towards a permanent deal no harm at all with a strong performance in the middle. Also, aside from that spell after half time, there were signs that Ruiz, Berbatov and Kacaniklic may well be able to play on the same team.
For Swansea, they end the season on a sour note after a year of such quality. A year that has seen them lift silverware and that has seen one of the best signings of the summer make his name in the Premier League - Michu.
Schwarzer was called into action a number of times - in particular by sticking out a strong hand to keep out Hernandez from close range. There was also some appalling finishing from the hosts. At the other end Kacaniklic ran rings around Rangel and was my man of the match - with Schwarzer a close second.
Well, for a while up until Fulham's second goal it was looking like anything but a Cottagers win. However, some last-ditch defending and clinical finishing has seen them take their first Premier League win against Swansea.
Karagounis finds Kacaniklic, whose shot is saved but deflected only into the path of the on-loan winger, who taps in for 3-0! Martin Jol's game plan has been played to perfection.
Just four minutes of the season remain, and it looks like it'll be Fulham who end on a surprising high.
FULHAM SUB: Swansea are still seeing most of the ball, but it'd be a big ask if they're do get anything now. Berbatov makes way - he's very rarely subbed off - with Hugo Rodallega on in his place.
The fans and the players have slowed down to walking pace now. I would now, after saying Swansea would surely score, be surprised if there was another goal.
SWANSEA SUBS: Agustien comes on for De Guzman and Neil Taylor is on for Davies. It's great to see him back.
Chico will probably be embarrassed about berating the linesman when Berbatov was being played well on. Swansea only have themselves to blame for this, but the gameplan which doesn't always work away from home, has paid off today for Fulham. Kacaniklic almost gets past Vorm for 3-0, but the keeper pinches the ball to stop it being game over.
Swansea are complaining about offside, but Berbatov was about three yards on. Ruiz plays him in and, down the right hand side, he has Kacaniklic in support. He shimmies around Vorm and rolls it home for a fortunate 2-0 lead.
It's just aimless from Fulham. Hangeland does well to win the ball ahead of Schechter but Riether's ball in the general direction of Berbatov goes straight to a white shirt.
SWANSEA SUB: Britton sells Senderos a dummy to create chance for a shot, but the effort is poor and he drags it wide. Laudrup finally makes a change ans Itay Schechter comes on for Hernandez.
FULHAM SUB: Duff, who has been excellent in support of Riether, comes off for Urby Emanuelson. He might switch over to the left, but for now it's like-for-like.
It's difficult to see what Michael Laudrup can do to improve things. His side are creating plenty of chances, it's just the finishing that is letting them down. Schwarzer again somehow keeps it out from a deep De Guzman cross.
Duff has had a really good game defensively. He just pipped in front of Hernandez to win the ball in a very dangerous position in the box. Fulham are not relieved for long, though as the ball comes back in and is headed out to Hernandez, who slices his volley.
It was a good first half from Fulham, but they're just trying to cling on now and they'd be very lucky to get away with a win here. Even a draw, the way it's going.
FULHAM SUB: Berbatov is isolated at the moment. He's being used as the pivot in counter-attacking moves, but Swansea seem to have players everywhere. Frimpong smashes the ball out of play so that he can make way for Karagounis. He takes his time, much to the disgust of Swansea's fans.
Frimpong is receiving treatment on the far touchline. It looks to be cramp - he hasn't played an awful lot of football recently. Meanwhile, Fulham venture beyond the half-way line for a moment, but the Swans pile forward again...
SAVE! It's Swansea vs. Schwarzer at the moment as Britton fires in a shot from an angle but the keeper tips it over. From the resulting corner he gets down well to smother a cross from the right. If a Swansea goal doesn't happen very soon I will eat my hat.
It's terrible at the back from Fulham! Schwarzer sells Hangeland short with a really poor pass, but the captain just about gets there before Michu. Chico is then beaten to the ball with a thunderous tackle from Hangeland. The visitors just cannot get out of their half.
CHANCE! A really nice move from Swansea there as Britton threads through to the overlapping Routledge, but the angle closed too quickly on him and he could only find the side netting. Then it really should be 1-1 as Hernandez is played in but drills his effort right at Schwarzer, who did well to push it away from danger.
They're getting ever-deeper now are Fulham. The sensible money would be on a Swansea equaliser to come soon. Crosses are flying in from all angles and as soon as Fulham pick up the second ball the player is surrounded by men in white!
Frimpong is nearly caught out on the edge of the box, but Duff is back well to win it back. Swansea come again through Hernandez and Routledge on the left. Ruiz looks to have won it back but he's surrounded by white shirts and the shot eventually is straight at Schwarzer. Really open game this, now, if Swansea are on top somewhat.
What a chance on the break for Fulham! They win it back and Berbatov sets Kacaniklic through, but the Swede's touch just lets him down as Williams is across to tackle with Ruiz looking for the pass across.
CHANCE! Riise gives it away but makes up for it by tackling Dyer as he was setting up the cross. From it Rangel's header falls to Chico in a glorious position but he hits it straight at Schwarzer. That should be 1-1.
Fulham have just got on top now after Swansea's bright start. In particular Frimpong and Enoh in the middle have been excellent - discliplined yet able to break forward when needed. Swansea win a corner fortunately as Rangel's shot is going wide but Schwarzer turns it behind.
Fulham get into trouble a couple of times: first Frimpong then Ruiz give the ball away, but Enoh in the end pinches it from Chico. They break through Berbatov, whose cross towards Ruiz is just overhit with the Cottagers two-on-one.
BOOKING: Lovely move from Fulham as Berbatov flicks into the path of Duff on the left, but the Irishman is crowded out and Fulham go back. Swansea get the ball back and come forward again, but it's a fine challenge again from Frimpong, who bursts forward and wins a free kick against Hernandez. The Spaniard is booked.
The players are emerging from the tunnel - I don't think there have been any subs, but will let you know if I'm wrong.
There are definitely more goal in this. Especially as stats show that Fulham would be seventh if games ended at half time. They don't and are frequently poor after the break - they'd be 18th on second-halves only. As it stands Fulham would be 11th which, taking into account their recent run would be a very good finish.
Swansea have probably edged it in terms of possession, but far and away the two best chances have fallen to Fulham. Both to Kacaniklic. He buried the first one with a superb low finish before Vorm saved his side with a wonderful touch from his second effort.
VOTE! You all love your own opinion, right? Good, because we have a vote for player of the season for you to have your say. Find it here, and share your thoughts with Sports Mole.
Boos are ringing around the Liberty Stadium at the whistle. I'm not sure if they're aimed at the referee, following in the players' footsteps who have been berating him all afternoon. I suspect that is the reason, as they don't die out until Lee Mason disappears down the tunnel.
Excellent defending from Senderos, who shepherds it out under pressure from Michu. He's limping again after that coming together - he needs the whistle.
Enoh dispossesses De Guzman before finding Berbatov, but again the Bulgarian holds up the ball and slows the move down, before Fulham eventually lose it.
SAVE! A slip from Riise almost lets Chico in, before the shot comes in from De Guzman and it's well held down low from the Fulham stopper, with Michu lurking. There will be three minutes of time added on.
Swansea want to end the half with a goal and are setting up camp in the Fulham half now. The game plan from the visitors has been to remain tight and nick a goal, which has worked up to now.
Senderos is down in the Fulham box and it looks as though he clashed with his centre-back partner Hangeland. He was caught by the elbow as the Norwegian fell, it seems. He should be able to run it off, although Hughes is warming up.
Not many chances in the last few minutes, although Swansea are now playing the far better football. Fulham try to break through Kacaniklic, but he's crowded out by Swansea who had doubled up on him.
Fulham are playing with a lot more bite than they have previously. The midfield are closing in to take the ball, but on occasion they are being caught out by Swansea's quick passing. Michu looks for Routledge down the left but, looking down the line, the winger is offside. Poor positioning.
Dyer finds Michu in acres of space on the edge of the box, but the Fulham defence are in quickly to block the shot. Dyer then shoots from fully 25 yards, but his dipping effort goes just over. It's risky from Fulham who are very slow playing it out from the back, but Frimpong nips in and wins a free kick.
Big, big header from Duff of all people, who had tracked Hernandez all the way to the far post from a Routledge cross. Hangeland is deemed to have fouled Routledge, but there was little in it in truth. He got away with going down softly.
OFF THE POST! Neat passing now from Fulham, who involve all the defenders and Enoh. Berbatov dinks a ball right to Duff with the outside of his boot, but the cross is headed away. The Bulgarian then shows great strength, but is pulled back by Chico and then from the chance Kacaniklic is played in but hits the post with his right foot! Vorm got a vital touch.
Lots of fouls are being given away now from both sides. Swansea are pressing as Fulham try to slow it down, which has led to a number of fouls against the home side. There's a real urgency now about the Swans.
Berbatov, instead of going back to Riise, decides to take on Chico in the left-back area. He wins the goal kick off him, but it's a risky move from the Bulgarian. He won't shy away from taking on his man.
BOOKING: Riether is the first player booked. His first touch is poor and he allows Davies in, before putting a boot in the left-back's face. It's a fair enough card as the foot was high.
Riise takes too much time to get a cross in, which allows Swansea to win the ball back. Enoh gives away a foul but Swansea can't work anything from it. Another call goes against Enoh, but that time it's somewhat harsh as he did get the ball from Michu.
That is where Ruiz is at his most dangerous. He can work the ball in a pocket of space, and when he has a runner from midfield he can be key. It was Frimpong who threaded it through - not what you might expect from him but the pass was weighted perfectly. Now Fulham are seeing a lot of the ball.
That's a wonderful move from Fulham. Ruiz backheels to Frimpong, who slides Kacaniklic in down the left and he shoots low and hard into the bottom corner.
CLOSE! If you weren't sure Frimpong was playing, you are now. Leon Britton takes it away from him and the Arsenal man clips him from behind. No booking though, which is fair enough as it was just a little late. Senderos passes straight to Hernandez, who drives at goal and shoots low, but it goes a yard wide.
Berbatov is frantically gesturing for players to come forward as he picks up the ball just inside the Swansea half. Eventually Enoh comes to help him but by then the Swans are back in numbers and the chance is gone. Dyer gets away after a nice passing move, but his cross from the byline is straight at Schwarzer.
Fulham have just got a little aimless in the past few minutes. Neither Ruiz nor Berbatov are the sort of forwards who thrive on balls aimed at their head, so the Cottagers are being just a bit wasteful at the moment.
Swansea are seeing the vast majority of the ball at the moment, but most of it is in their own half as Enoh and Frimpong are not being drawn into the chasing game.
Ruiz holds up the ball nicely and plays it in to the advancing Riether, but his pass towards Berbatov left the Bulgarian with a lot to do. He won't chase anything overhit. Then a long ball comes over the top to Berbatov, but Chico gets the better of him.
Still the Ruiz chance is by far the best chance of the game. Routledge gets through down the right but has to cross with his right so with it the momentum goes. It's evenly poised as it stands.
However, now Swansea start to find their rhythm with their passing game that has won so much praise. Sascha Riether makes a hash of a headed clearance but eventually Senderos is in there to hack clear.
Riise fires in a free kick from just outside the box, but it's not one of his better connections and it goes wide. This has been a decent start from Fulham.
Good ball from Routledge into Michu, but it's just too high for the Spaniard and he can't guide his header towards goal. Then he's offside as the ball comes back in - good save from Schwarzer nonetheless.
CHANCE! Early chance for Ruiz and he just didn't want to shoot! He beats the offside trap but is so left-footed that he tries to take it around the entire defence in the box and eventually scuffs his shot.
Prediction you say? Alright. Swansea win. Easy. Probably 2-0. Maybe it won't be that clear cut, but it's be a surprise if Fulham get anything here.
The teams are out and we're nearly ready to play. John-Arne Riise puts his arm around Frimpong. It'll be interesting to see how the midfield plays with two defensively minded players in the middle.
Swansea have a potential top-eight finish up for grabs here if they win and West Bromwich Albion cannot. Fulham? Well, pride I suppose. They won't want the miserable run of form to continue and a win would lift spirits ahead of what will need to be a big summer.
For Fulham Giorgios Karagounis, who has recently revealed that he won't be signing a new deal, drops to the bench in favour of a rare start for Emmanuel Frimpong. Philippe comes back into the side for Aaron Hughes. It's as expected up front with Bryan Ruiz in behind Dimitar Berbatov.
So for Swansea Michel Vorm comes back into the side, but otherwise it's as expected. They will look to finish the season on a high with Wayne Routledge and Nathan Dyer in behind Michu.
Swansea subs: Tremmel, Taylor, Lamah, Monk, Shechter, Tiendalli, Agustien
Fulham subs: Etheridge, Petric, Karagounis, Hughes, Rodallega, Frei, Emanuelson
FULHAM XI: Schwarzer; Riether, Senderos, Hangeland, Riise; Duff, Frimpong, Kacaniklic, Enoh; Ruiz; Berbatov
SWANSEA XI: Vorm; Rangel, Chico, Williams, Davies; Hernandez, Britton; Routledge, de Guzman, Dyer; Michu