Providing they are sitewide, I would choose a PR4 Blogroll link over a Blogpost every time. It's the choice of your link on one page, as opposed to your link on every page - I know which I prefer.
In terms of "bang for buck" go with blog posts. They are a lot cheaper and will be there indefinitely. Some webmasters remove sitewide links even if you buy a permanent link, but they really have no reason to remove blog posts. They'll be there for a while. I do recommend mixing up a lot of blog posts with some blogrolls...
Blog posts are a lot better than blog roll links Here is why: Writing a blog post that people like can attract even more links, and if you’ve written something that can potentially go viral, then that is going to immensely improve your rankings and authority. Google likes to see links that are surrounded by relevant text and a blog roll does not offer that. If you’re going to get a blog roll link, then make sure it is related to your niche. If the blog roll is going to appear on 50 related pages then I would be happy to pay $25 for that.
I think a mixture would be best, if the budget allows. But like most of us, budget doesn't really allows, so I guess I will go for blogroll links, just make sure the site is related and has a lot of pages for more effective sitewide links.
Does anyone know what Google feels about having a do-follow blogroll link on many pages? I mean, a blog could easily have maybe 1000 pages (in terms of posts, pages, etc.), so if your link were to appear on all of them (since it's a sitewide blogroll, usually), how would Google look at this? I'm sure they're not going "oh he just got a 1000 links, let's rank that site high" - but do they go "now that's a link spammer, we'll punish him a bit!" - or do they simply figure out that he has "multiple links from the same domain" and rank it as if it had a few good links?