Can anyone recommend a free, thorough online link checker for a fairly large website?
Here is a SEOmoz post discussing the pros and cons of two different crawling tools - Xenu and Screaming Frog - which check for broken links, among other things. However Screaming Frog is not free and Xenu is not online (and unfortunately does not run on Mac either). Some of the commenters suggest additional tools they use. I have used the W3C Link Checker before, but it is not very fast even for a single page. For a "fairly large website" I recommend going the way of the desktop client and see if Xenu can do what you need... if it is something you only need to check once or occasionally you may be able to find a Windows machine despite the additional inconvenience.
No tags, no glory is an online link checker that offers a free account to check up to 1,000 pages. Their 'PRO' edition checks 25,000 pages for $30/month.
Nodeworks offers a free service to check up to 1,000 pages. (You can check once, or schedule regular checks.) If you need to check more than 1,000 pages, you can purchase additional checks on their pricing page.
If you use WordPress, you might also consider the broken link checker plugin, which is free.