The only difference is that Partial
returns an MvcHtmlString
, and must be called inside <%= %>
, whereas RenderPartial
returnsvoid
and renders directly to the view.
If you look at the source code, you’ll see that they both call the same internal method, passing a StringWriter for it to render to.
You would call Partial
if you want to view, save, or manipulate the generated HTML instead of writing it to the page.