I worked directly with ASP.NET and Telerik controls for several years. I'm not very fond of Telerik, and here are some of the insights I gained from those experiences.
The value that Telerik controls provides (in my opinion) is drag-and-drop, pre-built user controls for developers who are not strong or motivated in UI/UX. I believe the most appropriate target audience for these are developers who want a UI that is "good enough", so they can continue to focus on business logic.
Usability
For better or worse, the usability is essentially locked in. There is almost no opportunity to whiteboard ideas and brainstorm creative wireframes.
This can limit the team's UI/UX thought process. Instead of thinking through a problem and coming up with creative concepts as a solution, the default go-to action is to look at the Telerik documentation for a tool that already exists and implement that. So, often the resulting UI is generic grids and filters, ugly charts, and cumbersome UX.
Technical Issues with Telerik
Some of the Telerik-specific issues I have experienced are:
- Loaded its own duplicate jQuery resource, which happened to be a different version than our main jQuery dependency. This caused bugs elsewhere that were difficult to track down.
- CSS styles were served dynamically from within a compiled .DLL, rather than a static file we could modify.
- Web Designers who didn't come from a .NET background were often lost and frustrated when trying to make simple modifications.
- The time commitment and investment required from the team to master customizing Telerik controls was inefficient. A disproportionate amount of time was spent implementing customizations and resolving inadvertent bug fixes, than building actual business logic or implementing new UI/UX features.
- The responsiveness of the UI felt sluggish and bloated, because it was.
Recommendation: Back-end Agnostic UI
I would recommend avoiding Telerik, and any other .NET-specific UI tools, entirely. A well-built web interface (client-side browser) shouldn't have hard dependencies on the type of server framework being used (ASP.NET, Python, Ruby). There are really great general purpose UI frameworks available, and this gives you the freedom to hire and utilize talented web designers from different background.
There are a few simple steps you can take to move in this direction while keeping your existing ASP.NET web application in tact:
- Create a clean MasterPage, remove all references to any .NET UI controls, stylesheets, js (ASP.NET or Telerik). Instead use only client-side libraries such as jQuery, Angular, Bootstrap (or an alternative [1]).
- Create separate stylesheets to handle your custom UI, and override any Bootstrap defaults
- Use generic ASP.NET controls like a Repeater to generate things like grids and lists. This is almost identical to a for loop in other platforms, and will be familiar to web designers. It is also a familiar tool to C#/VB developers. Developers can manually code HTML lists, tables, etc.
- You can use WebMethods or WebApi to create clean .NET methods that can be called directly from the UI using ajax.
- Migrate one page at a time to the new UI framework MasterPage.
[1] = http://modernweb.com/2014/02/17/8-bootstrap-alternatives/