No, it's free to upload and get matches. They have some extra tools that can be helpful when looking at matching DNA that you have to pay for but they aren't essential at all.
If you want to search for records (eg census, birth, marriage, death records etc) then you have to have a subscription.
But just for the basic uploading DNA and finding matches, there is no charge.
Ancestry have a £20 discount that ends midnight today so the cost is £59 instead of £79 (plus £10 shipping). But they also run regular discounts throughout the year so will probably be doing another discount in the new year.
I would recommend Ancestry over MyHeritage to take out a subscription in order to find the records you're looking for. I find it much easier to search on Ancestry.
I also find their trees much, much easier to create and deal with and understand than those on MyHeritage.
I've had a subscription with MyHeritage but didn't renew it. But the thing is, MyHeritage is great to use if you're looking for German DNA matches.