Will you be spending time in both Amsterdam and London, not just flying in or out of a city?
If visiting both cities, the train is probably about as fast as flying. You can get from Amsterdam to London in about four hours, city to city (change in Brussels from Thalys to Eurostar). If you flew, the actual flight is quick - but you have to get to the airport in Amsterdam, check in before your flight - so an hour before at least, fly, then get from the London airport into the city. Add up all of that travel time and it's probably about the same. But personally, I would find the train more fun and relaxing - but I love trains.
Bonus if you've never been to Belgium: you can stop off in Brussels for a few hours and check it out - just build in a layover. Leave your bags at the station. Brussels isn't my favorite city in Belgium, but it's definitely worth checking out. You would probably leave your bags at Midi station in Brussels, take a short train ride to Central station, and from there just walk down to the Grand Place, etc. then head back to Midi to catch the Eurostar. (I think you have to go through passport control there etc., extra time required before boarding the Eurostar.)
Flying might actually be slightly cheaper, depending on whether you have a lot of bags or no bags to check. You can get super cheap easyJet flights, but there are often extra hidden fees to check bags etc. Plus the cost of the local transportation to/from the airport. Really depends when you book either the trains or your flight - the earlier you book the cheaper it is, both the flight and the trains.